javascript - 为类中的所有元素添加唯一的监听器

标签 javascript jquery

是否可以通过 javascript 或 jQuery 向类的所有元素添加唯一的事件监听器,以便在触发事件时仅针对该元素触发事件,而不是针对具有相同类名的所有元素触发事件?

例如,如果我有以下 HTML

<div class"clickable-box"><span style="display: none;">Hi There!</span></div>
<div class"clickable-box"><span style="display: none;">Peek-A-Boo!</span></div>
<div class"clickable-box"><span style="display: none;">Now You See Me!</span></div>

...以及以下 jQuery

$('.clickable-box').click(function() {
    $('.clickable-box span').slideToggle('slow');
});

...上面的内容将切换所有 div 的显示跨度。

有没有办法单独制作这些触发器,而不必为每个 div 使用唯一的 id 或类?

最佳答案

你需要

$('.clickable-box').click(function() {
    $(this).find('span').slideToggle('slow');
});

div 中的 class 之后也缺少 =

<div class="clickable-box"><span style="display: none;">Hi There!</span></div>
<div class="clickable-box"><span style="display: none;">Peek-A-Boo!</span></div>
<div class="clickable-box"><span style="display: none;">Now You See Me!</span></div>

演示:Fiddle

关于javascript - 为类中的所有元素添加唯一的监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18708719/

相关文章:

javascript - 如何用末尾没有空白的div水平填充页面

javascript - 在 JavaScript 中链接一个函数?

javascript - 检测 WebGL 支持的正确方法?

javascript - CKEditor 即时编辑配置

jQuery 检查页面上的任何 div 是否在 if 语句中具有特定类

javascript - 如果前 5 个字符等于输入字段,如何设置选择框选项

javascript - 如何在匿名函数构造中获取变量名 var f = function(){};

javascript - grunt.js 配置中常用配置选项的继承

javascript - 如何在两个异步函数完成后运行函数

jquery - Bootstrap : Implement facebook-like notifications in header (navbar) as submenu, 不仅仅是一个计数器