js,for循环,可以往里面添加函数,和事件吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js,for循环,可以往里面添加函数,和事件吗?相关的知识,希望对你有一定的参考价值。

可以,for循环里面可以填入任何的函数语句事件,具体例子如下:

//for循环给class=a绑定事件:
function a()alert('Hello');
var classElement = document.getElementsByClassName('a');
for(var i=0;i<classElement.length;i++)
    classElement[i].addEventListener('click',a);


//for循环警告5次
for(var i=0;i<5;i++)
    alert('Alert');

参考技术A <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
<div id='content' style='width: 400px; height: 400px;'></div>
<script>
    var events = ['click', 'mouseenter', 'mouseout']
    var content = document.querySelector('#content')
    function anEventFunction(e) 
        alert(e.type)
    
    for (var index = 0; index < events.length; index++) 
        content.addEventListener(events[index], anEventFunction)
    
</script>
</body>
</html>

参考技术B 当然可以啊,理论上填啥都可以,语句正确啊这些都能运行,但是效果嘛,还是要设计一下。比如dom操作,在循环里面的话好像还挺不好的。

js如何循环添加点击事件

就是给一组相同的div添加点击事件,并且能知道是点击的那个div
用jquery也可以
$("."+data[i].ids+"").on("click", function()
alert(data[i].ids);
);
这里是通过给div添加class,通过class来给点击事件的
可是却报错了
请问大神还有其他的办法吗?

$("."+data[i].ids+"").bind("click", function()
            $(this).data('divname',''+data[i].ids);
            alert($(this).data('divname'));
         );

这个是在这个div上绑定了一个数据

对了 报错内容发一下

追问

Uncaught TypeError: Cannot read property 'ids' of undefined

参考技术A $(".divclass").click(function ()
$(this) //当前点击的Div
)
参考技术B

    你可以直接给他们一个公共的class,然后给予不同的id(区分点击的是那一个)。 

 <div class="test" id="div1"> 一些内容</div>
 <div class="test" id="div2">一些内容</div>
 <div class="test" id="div3">一些内容</div>

 2.  js代码:

$(".test").click(function()
         alert('我点击的这个div是'+$(this).attr('id'));
   );

以上是关于js,for循环,可以往里面添加函数,和事件吗?的主要内容,如果未能解决你的问题,请参考以下文章

js如何使用for循环往json添加数据?

JS for循环遍历点击事件

前端—— JavaScript基础操作:if语句for循环while循环for...infor...of异常处理函数事件JS选择器JS操作页面样式

JS循环添加事件

shell编程中的for循环如何实现

js常用对象:点击双击onload事件鼠标相关onblur事件和onfocus事件等;通过循环给多个元素添加事件通过addEventListener() 方法 监听事件函数