事件

2017-06-26  本文已影响0人  我是一只_鱼

题目1: DOM0 事件和DOM2级在事件监听使用方式上有什么区别?

题目2: attachEvent与addEventListener的区别?

题目3: 解释IE事件冒泡和DOM2事件传播机制?

题目4:如何阻止事件冒泡? 如何阻止默认事件?

题目5:有如下代码,要求当点击每一个元素li时控制台展示该元素的文本内容。不考虑兼容

var lis = document.querySelector('.ct'). querySelectorAll('li'); for (var i = 0;i<lis.length; i++) { lis[i].addEventListener('click',function() { console.log(this.innerText); }) }

var ct = document.querySelector('.ct'); ct.addEventListener('click',function(e) { console.log(e.target.innerText); })

题目6: 补全代码,要求:

当点击按钮开头添加时在<li>这里是</li>元素前添加一个新元素,内容为用户输入的非空字符串;当点击结尾添加时在最后一个 li 元素后添加用户输入的非空字符串.
当点击每一个元素li时控制台展示该元素的文本内容。
var content = document.querySelector('.ipt-add-content'); var start = document.querySelector('#btn-add-start'); var end = document.querySelector('#btn-add-end'); var ct = document.querySelector('.ct'); end.addEventListener('click',function(){ var li = document.createElement('li'); li.innerText = content.value; if(li.innerText !=''){ ct.appendChild(li); } }); start.addEventListener('click',function(){ var li = document.createElement('li'); li.innerText = content.value; if(li.innerText !=''){ ct.appendChild(li); } ct.insertBefore(li,ct.firstChild); }); ct.addEventListener('click',function(e){ if(e.target.tagName.toUpperCase()==='LI') console.log(e.target.innerText); });

题目7: 补全代码,要求:当鼠标放置在li元素上,会在img-preview里展示当前li元素的data-img对应的图片。

var ct = document.querySelector('.ct'); var imgPre= document.querySelector('.img-preview'); var image = document.createElement('img'); ct.addEventListener('mouseover',function(e) { var path = e.target.getAttribute('data-img'); image.setAttribute('src',path); imgPre.appendChild(image); });

上一篇下一篇

猜你喜欢

热点阅读