事件

2017-03-18  本文已影响20人  GaoYangTongXue丶

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


题目2: attachEvent与addEventListener的区别?


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


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


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

<ul class="ct">
    <li>这里是</li>
    <li>饥人谷</li>
    <li>前端6班</li>
</ul>
<script>
 var ct = document.querySelector('.ct')
 ct.addEventListener('click', function(event){
     if(event.target.tagName.toLowerCase() === 'li'){
        console.log(event.target.innerText);
     }
 })
</script>

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

<ul class="ct">
    <li>这里是</li>
    <li>饥人谷</li>
    <li>任务班</li>
</ul>
<input class="ipt-add-content" placeholder="添加内容"/>
<button id="btn-add-start">开头添加</button>
<button id="btn-add-end">结尾添加</button>
<script>
//你的代码
  var ct = $('.ct');
  var inputText = $('.ipt-add-content')
  var startBtn = $('#btn-add-start')
  var endBtn = $('#btn-add-end')
  ct.addEventListener('click',function(e){
    if(event.target.tagName.toLowerCase() === 'li'){
        console.log(event.target.innerText);
     }
  })
  startBtn.addEventListener('click',function(e){
    if(inputText.value !== ''){
        var child = document.createElement('li')
        child.innerText = inputText.value;
        ct.insertBefore(child,ct.children[0])
     }
  })
  endBtn.addEventListener('click',function(e){
    if(inputText.value !== ''){
        var child = document.createElement('li')
        child.innerText = inputText.value;
        ct.appendChild(child)
     }
  })
  function $(str){
    return document.querySelector(str)
  }

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

<ul class="ct">
    <li data-img="https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1794894692,1423685501&fm=116&gp=0.jpg">鼠标放置查看图片1</li>
    <li data-img="https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=819201812,3553302270&fm=116&gp=0.jpg">鼠标放置查看图片2</li>
    <li data-img="https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=1350614941,725003865&fm=116&gp=0.jpg">鼠标放置查看图片3</li>
</ul>
<div class="img-preview"></div>
<script>
//你的代码
  var ct = document.querySelector('.ct')
  ct.addEventListener('mouseover',function(e){
    if(e.target.tagName.toLowerCase() === 'li'){
      var imgStr = e.target.getAttribute("data-img");
      // console.log(imgStr)
      var imgDiv = document.querySelector('.img-preview')
      imgDiv.innerHTML = '![](+imgStr+)'
    }
  })
</script>
上一篇下一篇

猜你喜欢

热点阅读