美文网首页
使用creatElement创建元素,添加事件

使用creatElement创建元素,添加事件

作者: 王远清orz | 来源:发表于2019-10-21 11:45 被阅读0次
    <body>
      <input type="button" value="按钮" id="btn">
      <div id="box">
    
      </div>
    
      <script>
        // var p = document.createElement('p');
        // p.innerText = '你好';
        // p.style.color = 'red';
        // var box = document.getElementById('box');
        // box.appendChild(p);
    
    
        // 模拟数据
        var datas = ['1', '2', '3', '4', '5', '6'];
        // 获取按钮
        var btn = my$('btn');
        // 给按钮注册事件
        btn.onclick = function () {
    
          var box = my$('box');
          // 创建ul元素
          var ul = document.createElement('ul');
          // 把ul放入页面
          box.appendChild(ul);
          for (var i = 0; i < datas.length; i++) {
            var data = datas[i];
            // 在内存中动态创建li
            var li = document.createElement('li');
            // 讲li添加到ul
            ul.appendChild(li);
            // 往li中添加数据,innerText有兼容问题
            // li.innerText(data);
            setInnerText(li, data);
    
            // 给li注册事件
            li.onmouseover = liMouseOver;
            li.onmouseout = liMouseOut;
          }
        }
    
        // 当鼠标经过时执行
        function liMouseOver() {
          // 高亮显示
          this.style.backgroundColor = 'red';
        }
    
        // 当鼠标离开时执行
        function liMouseOut() {
          //取消高亮显示
         this.style.backgroundColor = '';
        }
        //处理inenrText兼容问题
        function setInnerText(element, content) {
          if (typeof element.innerText === 'string') {
            return element.innerText = content;
          } else {
            return element.textContent = content;
          }
        }
      </script>
    </body>
    

    相关文章

      网友评论

          本文标题:使用creatElement创建元素,添加事件

          本文链接:https://www.haomeiwen.com/subject/qwftvctx.html