jquery - 代表有什么用?

标签 jquery

我有两个用于鼠标悬停功能的处理程序,我想知道它们之间的区别以及如何以最有效的方式使用每个处理程序。

代码块一:

$('.test div').mouseover(function() {
                    $(this).stop().animate({
                        left: '100px'
                    }, 550);
});

代码块二:

$('.test').delegate('div', 'mouseover', function() {
                    $(this).stop().animate({
                        left: '100px'
                    }, 550);
                }); 

提前致谢:)

最佳答案

.delegate() 一个 mouseover事件处理程序.test元素,而不是每个 .test div匹配,为 future 工作<div>添加在 .test 内的元素您调用的元素 .delegate()上。

如果您没有多个 <div>每个 .test 内的元素并且它们不会动态更改(例如通过 AJAX 添加),您可以直接绑定(bind)。在其他情况下,它们会动态变化或只有很多,请使用 .delegate()因为启动成本要便宜得多,而且气泡/选择器成本微乎其微。

关于jquery - 代表有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4257861/

相关文章:

php - 根据尺寸更改价格并显示尺寸

jquery - 单击缩略图并将图像加载到空 div 中

javascript - 在创建对象时将 getJSON 转为数组

jquery - 防止在可内容编辑的 <div> 中删除 <span>

javascript - 如何使用 jquery 操纵 -box-shadow 的颜色?

jQuery UI Accordion - 如何更改用于内容面板的元素

javascript - 使用 jQuery 双击表格行时打开链接

javascript - Jquery 中的开/关点击事件

javascript - 如何将不透明度应用于非事件 slider 元素?

php - 在 laravel 5 中发送 ajax 请求