JS遍历UL下的Li,点击弹出Li的索引

来源:爱站网时间:2020-10-01编辑:网友分享
JavaScript开发一般是由Netscape的livescript开发的脚本语言,主要目的是解决Perl等服务器端语言带来的速度问题,下面爱站技术频道小编为大家介绍JS遍历UL下的Li,点击弹出Li的索引。

JavaScript开发一般是由Netscape的livescript开发的脚本语言,主要目的是解决Perl等服务器端语言带来的速度问题,下面爱站技术频道小编为大家介绍JS遍历UL下的Li,点击弹出Li的索引。

首先我们需要一个html结构

  • a
  • a
  • a
  • a
  • a

我们遍历ul 下所有的li 并添加点击事件,一般我们会在for循环里面添加点击事件,但是结果和我们所期盼不一样,那么是为什么呢????

接下来看看我们的js代码

var li = document.getElementsByTagName('li');
for(var i = 0;i

我们实现了!!!

这样就是得来我们想要的效果点击相应的li得来相应的索引。

简单说一下实现的过程吧

(function () { /* code */ } ()); // 推荐使用这个
(function () { /* code */ })(); // 但是这个也是可以用的

这是我整理立调函数或自执行函数;

本质上我们是利用闭包的原理实现弹出的索引,我们立调函数传一个参数Index,也就是我们的索引i,在函数里面实现了闭包,

Index会一直保留在作用域块内,这样我们再点击的时候,会调用作用域名内保存的索引,从而实现我们需要的功能;

我们几个简单的例子

    function num(){
var i = 0;
return function(){
console.log(i++);
}
}
var counter = num();
console.log(counter()); // 0     console.log(counter()); // ?? 
 var counter1 = (function(){
var i = 0;
return {
get:function(){
return i;
},
set:function(val){
i = val;
},
increment:function(){
return ++i;
}
}
}());     
    console.log(counter1);
    console.log(counter1.get()); // ?
    console.log(counter1.set(3)); // ?
    console.log(counter1.increment()); // ?
    console.log(counter1.increment()); // ?
console.log(counter1);
console.log(counter1.get()); // 0
console.log(counter1.set(3)); // 3
console.log(counter1.increment()); // 4
console.log(counter1.increment()); // 5

通过上述介绍的JS遍历UL下的Li,点击弹出Li的索引,我们都知道了程序员必须要有一技之长,好处都是很多的,这将决定项目的健康运行。

上一篇:JavaScript来确定页面访问模式计算机或移动终端

下一篇:JS中csstext设置CSS样式的一种简单方法

您可能感兴趣的文章

相关阅读