jquery 功能和文档就绪

标签 jquery document-ready jquery-on

我使用 jQuery on()函数将 onclick 函数附加到我网站中的一组 anchor ,如下所示:

<ul>
  <li>First <a href='#' title='delete' class="itemDelete">x</a></li>
  <li>Second <a href='http://www.repubblica.it' title='delete' class="itemDelete">x</a></li>
  <li>Third <a href='#' title='delete' class="itemDelete">x</a></li>
</ul>​

<script type="text/javascript">
$(document).on('click', '.itemDelete', function(e) {
    $(this).closest('li').remove();
    e.preventDefault();
});
</script>

我应该在下面的 block 中插入 JavaScript 代码吗?

$(document).ready(function() {
  ...
});

如果是,为什么?

最佳答案

在任何情况下,这段代码都不需要完全解析文档内容,因为您使用的 document 始终存在。作为第二个参数传递的选择器不会以任何方式用于检索元素,因此 dom 不需要为此做好准备。

如果不是上述情况,您将无法首先调用 $(document).ready

重要的是要了解,您在幕后将直接的普通事件监听器附加到 document。选择器实际上所做的就是,如果事件传播路径中没有元素与您的选择器匹配,则不会调用您的处理程序回调。显然,如果传播被较低级别的监听器过早停止,在这种情况下也不会被触发。

关于jquery 功能和文档就绪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11798179/

相关文章:

javascript - document.ready 和 append 动态表单项

javascript - 所有 jquery 事件都应该绑定(bind)到 $(document) 吗?

javascript - Jquery 元素父选择器

Javascript 检索字符后的哈希值

jquery - 测试 jquery 是否已加载而不使用文档就绪事件

javascript - 隐藏元素以供稍后显示 - 浏览器如何更新屏幕?

javascript - 在使用 jQuery 加载图像之前显示加载图像?

javascript - 是否可以删除对整个 div 的特定区域的 css 模糊效果

python - Django 没有将数据传递给 POST 请求的 View

javascript - 语法错误: '#companySize option:selected' is not a valid selector