23

一、事件流

1.绑定事件

想要给一个元素绑定事件,我们有两种方法:使用内联事件或事件监听器。在之前的课程中,我们一直使用的是内联事件来为元素绑定事件

<button id='btn1'>按钮1</button>

<button id='btn2'>按钮2</button>

    <script type="text/javascript">

        var btn1=document.getElementById('btn1');

        var btn2=document.getElementById('btn2');

1)内联事件

btn1.onclick=function(){

    alert(1111);

}

//无限制第为元素绑定事件

btn1.onclick=function(){

    alert('btn1,第一次绑定');

}

    btn1.onclick=function(){

        alert('btn1,第二次绑定');

}

2)事件监听

btn2.addEventListener('click',function(){

    alert(2222);

})

</script>

//无限制第为元素绑定事件

btn2.addEventListener('click',function(){

    alert('btn2,第一次绑定');

})

    btn2.addEventListener('click',function(){

        alert('btn2,第二次绑定');

})

二、事件冒泡与事件捕获

1.事件冒泡

css样式

*{

    margin:0;

    padding:0;

}

#div1{

    width:300px;

    height:300px;

    background: #f00;

    line-height: 300px;

}

#div2{

    width:200px;

    height:200px;

    background: #f0f;

    line-height: 200px;

}

#div3{

    width:100px;

    height:100px;

    background: #0ff;

}

div

<div id='div1'>

    <div id='div2'>

        <div id='div3'></div>

    </div>

</div>

script

var div1=document.getElementById('div1');

var div2=document.getElementById('div2');

var div3=document.getElementById('div3');

div1.addEventListener('click',function(){

    console.log('我是div1');

})

div2.addEventListener('click',function(){

    console.log('我是div2');

})

div3.addEventListener('click',function(){

    console.log('我是div3');

})

2.事件捕捕获

css样式

*{

    margin:0;

    padding:0;

}

#div1{

    width:300px;

    height:300px;

    background: #f00;

    line-height: 300px;

}

#div2{

    width:200px;

    height:200px;

    background: #f0f;

    line-height: 200px;

}

#div3{

    width:100px;

    height:100px;

    background: #0ff;

}

div

<div id='div1'>

    <div id='div2'>

        <div id='div3'></div>

    </div>

</div>

script

var div1=document.getElementById('div1');

var div2=document.getElementById('div2');

var div3=document.getElementById('div3');

div1.addEventListener('click',function(){

    console.log('我是div1');

},true)

div2.addEventListener('click',function(){

    console.log('我是div2');

},true)

div3.addEventListener('click',function(){

    console.log('我是div3');

},true)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、事件流 1.绑定事件 想要给一个元素绑定事件,我们有两种方法:使用内联事件或事件监听器。在之前的课程中,我们一...
    Polaris_L阅读 411评论 0 0
  • 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行“操作”(actions)。 jQuer...
    枇杷树8824阅读 735评论 0 3
  • toggle() 依次展示或隐藏某个元素slideDown() 向下展开slideUp() 向上卷起slideTo...
    试翼腾渊阅读 372评论 0 0
  • jQuery 入口函数: $(function(){ // 执行代码 }); jQuery 选择器: 元素选择器 ...
    Hassd阅读 466评论 0 1
  • 移动端事件 一、事件定义及分类 1. click事件 单击事件,类似于PC端的click,但在移动端中,连续cli...
    Lin1005阅读 273评论 0 0

友情链接更多精彩内容