事件题目

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

<ul class="ct">
    <li>这里是</li>
    <li>饥人谷</li>
    <li>前端6班</li>
</ul>
<script>
var lis=document.querySelectorAll(".ct>li")

lis.forEach(function(value){
  value.addEventListener("click",function(){
    console.log(this.innerText)
  })
})
</script>

补全代码,要求:

当点击按钮开头添加时在<li>这里是</li>元素前添加一个新元素,内容为用户输入的非空字符串;当点击结尾添加时在最后一个 li 元素后添加用户输入的非空字符串.
当点击每一个元素li时控制台展示该元素的文本内容。

<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 btnHeadAdd=document.querySelector("#btn-add-start");
    var btnEndAdd=document.querySelector("#btn-add-end");
    var btnContent=document.querySelector(".ipt-add-content");
    var firstLi=document.querySelector(".ct>li:first-child")
    var ct=document.querySelector(".ct")
    var lis=document.querySelectorAll(".ct>li");

    btnHeadAdd.addEventListener("click",function(){
        if (!btnContent.value=="") {
            headAddEvent()
        }     
    })

    btnEndAdd.addEventListener("click",function(){
        if (!btnContent.value=="") {
            footerAddEvent()
        }
    })

    ct.addEventListener("click",function(e){
        var target=e.target
        console.log(target.innerText)
    })

    function headAddEvent(){
      var Newli=document.createElement("li")
      var btnText=btnContent.value
      var NewliText=document.createTextNode(btnText)
      Newli.appendChild(NewliText)
      ct.insertBefore(Newli,ct.firstChild)
    }

    function footerAddEvent(){
      var Newli=document.createElement("li")
      var btnText=btnContent.value
      var NewliText=document.createTextNode(btnText)
      Newli.appendChild(NewliText)
      ct.appendChild(Newli)
    }
</script>

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

function $(id){
        return document.querySelector(id)
  }
    function $$(cls){
        return document.querySelectorAll(cls)
  }
    
    console.log($$(".ct>li"))

    $$(".ct>li").forEach(function(value){
        value.addEventListener("mouseover",function(){
            var dataImg = this.getAttribute('data-img');
            $(".img-preview").innerHTML='![](' + dataImg + ')'
        })
    })

实现如下图Tab切换的功能

Paste_Image.png

http://js.jirengu.com/gofunopucu/1/edit?html,css,js,output

实现下图的模态框功能,点击模态框不隐藏,点击关闭以及模态框以外的区域模态框隐藏

Paste_Image.png

http://js.jirengu.com/gexedeyopa/11/edit?html,css,js,output

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

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,687评论 1 92
  • 1、DOM0 事件和DOM2级在事件监听使用方式上有什么区别? DOM0:onclick 只能绑定一个事件,绑定多...
    zh_yang阅读 2,361评论 0 0
  • 1、 写一个函数,批量操作 css 2、如何获取 DOM 计算后的样式 可以使用document.defaultV...
    zh_yang阅读 2,600评论 0 2
  • 1、DOM0 事件和DOM2级在事件监听使用方式上有什么区别? DOM0事件就是把一个方法赋值给一个元素的事件处理...
    Jeff12138阅读 1,184评论 0 0
  • 于春阳里萌发,我感到了季节物候的召唤;太阳母亲的双手抚慰着我,我周身充溢着爱的暖流。 我呼吸,我伸展,我欢舞;我倾...
    兰兮阅读 4,007评论 3 5

友情链接更多精彩内容