jquery - 在单元素 id-selector 上使用 jQuery .each() 方法

标签 jquery

解释jQuery dialogs在 Nemikor 博客中,Scott González 在 id 选择器上使用 .each() 方法:

$('#page-help').each(function() {
  var dialog = $('<div></div>')
    .load($(this).attr('href'))
    .dialog( ... );
  $(this).click(function() { ... });
});

既然 id 选择器只能返回单个元素,那么使用 .each() 方法的目的是什么? (通常用于迭代匹配的元素)。

是否只是没有更简单的方法来执行提供对 $(this) 访问的“page-help”元素的函数?

最佳答案

它可以让你搞乱一些东西,而不会污染周围的命名空间。另一种选择可能是:

(function($this) {
  var dialog = $('<div></div>')
    .load($this.attr('href'))
    .dialog(...);
  $this.click(function() { ... });
})($('#page-help'));

不知道两者哪个更令人不安。我想我真的不知道这就是这样做的原因(即命名空间整洁)。

关于jquery - 在单元素 id-selector 上使用 jQuery .each() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3990179/

相关文章:

jquery - 如何获取 jQuery 的基本路径?

javascript - jquery contextmenu - 如何使用 contextmenu Action 获取菜单中被点击项目的 id

javascript - 单击时无法加载 Div 内容

jquery - 循环内 keydown 上的事件监听器会触发一次,但除非重新启动循环,否则不会再次触发。为什么?

jquery - 在jsTree中打开子节点

jquery - 在 Jquery 中使新的 Div 可拖动

javascript - 使用 Javascript 调整元素大小时如何刷新自动边距?

javascript - 获取由javascript生成的其他页面的内容

javascript - 尝试如果用户选择一个文件,则创建一个元素,但它会加倍

javascript - 仅带有 CSS 的标题横幅?