js ul li 隐藏多余li

JavaScript023

js ul li 隐藏多余li,第1张

<ul>

<li>111</li>

<li>222</li>

<li>333</li>

<li>444</li>

</ul>

<script>

window.onload=function(){

    var lis=document.getElementsByTagName("li")

    for(var i=3i<lis.lengthi++){

        lis[i].style.display="none"

    }

}

</script>

还有一种更好的方法是用css来直接实现,无须js代码:

<style>

ul li:nth-child(n+4) {display:none}

</style>

<ul>

<li>111</li>

<li>222</li>

<li>333</li>

<li>444</li>

</ul>

在生成的时候添加独特变量来区别,或者使用$(selector).eq(index)来数第几个。或者使用$(selector).each(function(i,dom){})来过滤选择特定的

一般树型结构都有特定的数据格式,如 parent : {name,list ,children : []},

查看对应节点的children的length大小 来判断是否有第二级菜单。

1、使用jquery脚本库,因此先引入jquery脚本文件。

2、html代码里,就是一个ul列表,里面有二个img控件,还有一个按钮。要注意的是给ul加了一个样式名。

3、使用jquery,先为按钮添加一个点击事件。

4、在点击事件函数里,我们直接使用js代码就能获取到img控件了,var imgs = $(".jy_ul li img")

这就是使用jquery的方便,ul列表的样式名,然后按层次 li img的控件名,就能获取到图片控件了。

5、用alert输入图片的src属性来验证获取到的数据是否准确。因为有两个图片控件,所以代码里获取到的是一个数组,我们输出第二个图片的src。

6、运行页面,可以看到有二个图片和一个按钮,点击按钮。

7、点击后弹出了第二张图片的src属性,对比代码,数据正确。