以下是一个示例代码,演示了如何遍历对象集合并为onchange事件创建一个匿名函数:
// 创建一个对象集合
var elements = document.getElementsByClassName('my-element');
// 遍历对象集合
for (var i = 0; i < elements.length; i++) {
// 为每个元素创建一个匿名函数
(function(index) {
elements[index].onchange = function() {
console.log('Element ' + index + ' has changed.');
// 在这里可以执行其他操作
};
})(i);
}
在上面的示例中,我们首先使用document.getElementsByClassName
获取到所有具有my-element
类名的元素,并将它们存储在elements
数组中。
接下来,我们使用for
循环遍历elements
数组。在每次循环中,我们创建一个立即执行的匿名函数,并将循环变量i
作为参数传递给这个匿名函数。这样做的目的是为了在每次迭代中创建一个新的函数作用域,以便在匿名函数中访问正确的index
值。
在匿名函数内部,我们将onchange
事件处理程序设置为一个新的函数。在这个函数中,我们可以执行任何我们想要的操作。在这个示例中,我们只是在控制台打印出正在更改的元素的索引。
通过这种方式,我们可以确保在每个元素的onchange
事件中都有一个独立的函数,可以访问正确的索引值。
上一篇:遍历对象键中的数组属性