我可以遍历 for 循环以创建更多 JavaScript 吗?
Can I iterate through for loop to create more javascript?
>我需要根据 mysql 数据库中存储的图像记录数量在页面加载时填充多个.click()
函数。
到目前为止,我有一个页面可以在带有<ul>
图像按钮的照片之间很好地切换
但是我必须手写处理它的jQuery。
有没有办法根据数据库中的记录量,使用正确数量的.click()
函数填充.js
文件。
除了 Alex 的答案之外,如果要设置尚不存在或尚未添加到页面的元素的 click 事件,您可以执行以下操作:
$(body).on('click','a.record',function(){
//any existing or future a element with class record will have this click function
});
不应向每个元素添加单独的onclick
处理程序,而应使用事件委托并将单个事件处理程序附加到某个容器。所述事件句柄将捕获所有onclick
事件,因为气泡通过 DOM 向上。
您无需为每个唯一元素编写click()
。
相反,您可以使用选择器选择一堆元素,例如$('a.record')
然后将click()
链接到该元素...
$('a.record').click(function() {
// Any `a` element with a class of `record` was clicked.
});
这样做的缺点是你添加了一堆事件侦听器,它不会被触发为将来的元素。
正如其他人所提到的,使用 on()
(如果使用较新的 jQuery(或delegate()
(如果使用较旧的(进行事件委托是最好的,因为它只附加一个事件侦听器,并且将与附加事件后添加的未来元素一起使用。
$(document).on('click', 'a.record', function() {
// Any `a` element with a class of `record` was clicked, now or in the future.
});
我在这里使用了document
,但你应该使用不会改变的最近的祖先,这可能是你描述的ul
元素。
相关文章:
- 从javascript创建一个列表
- 使用Javascript创建测验页面
- 获取对使用Tampermonkey使用javascript创建的元素的引用
- Jquerymobile-使用javascript创建选择菜单
- 使用SVG和JavaScript创建波浪动画
- 用javascript创建一个看起来正常分布的模式
- 如何在Ol3弹出窗口中添加用javascript创建的按钮上的点击事件
- 在PHP邮件中发送javascript创建的内容
- Knockout绑定是膨胀的html(表单元格),如何使用javascript创建绑定或从父元素绑定
- 重置使用javascript创建的新tr的val
- 如何使用javascript创建颜色数组
- javascript创建日期的月份错误
- 如何使用JavaScript创建时间计数器
- 使用Javascript创建内部样式表
- 用javascript创建另一个对象的实例
- 如何使用HTML、CSS和JavaScript创建自动图片库幻灯片
- 使用Javascript创建的Cookie在C#代码中不可访问..任何原因或其他选择
- 用javascript创建对象的dynamic数组
- Javascript创建函数,以便在其他函数之间共享变量
- 使用javascript创建幻灯片效果