在 jQuery 中,`this.selector` 在 `$(document).on('click', this.selector, ...)` 中是什么意思?
In jQuery, what does `this.selector` mean in `$(document).on('click', this.selector, ...)`?
我看到这样的表达:
$( document ).on( 'click', this.selector, this.startImageLightbox);
我知道 $("div").click(callback)
是什么意思,但是上面的整个表达式,尤其是 this.selector
看起来让我很困惑。
这里的this
是什么意思?
有人对此有想法吗?
是jQuery对象的一个属性(插件方法里面this
指的是jQuery对象),也就是selector
用于查找元素。
例如:
$('div').selector -> div
$('div input').selector -> div input
$('div').find('input').selector -> div input
因此,上述代码用于注册一个委托事件处理程序,该事件处理程序针对初始化插件的元素
.on("click", "selector", callback)
对比 .click()
.click()
将处理程序直接附加到选定的选择器。这意味着源自该选择器或其 children 之一的任何事件都将触发回调。
.on("click", "selector", callback)
将处理程序附加到正文。因为这里所有的元素都是children,所以一切都会匹配。但是,第二个参数 "selector" 将过滤掉除此之外的所有内容。如果您在加载完成后向页面添加元素,这将特别有用,因为您不必再将处理程序附加到新元素。文档上的处理程序将处理所有事情。
this.selector
此 jQuery 插件将您提供的选择器存储为 属性。 this
指的是插件,this.selector
指的是那个属性。传递给 .on()
函数的值几乎可以是任何值。例如 ".classname"
或 "#elementId"
.
我看到这样的表达:
$( document ).on( 'click', this.selector, this.startImageLightbox);
我知道 $("div").click(callback)
是什么意思,但是上面的整个表达式,尤其是 this.selector
看起来让我很困惑。
这里的this
是什么意思?
有人对此有想法吗?
是jQuery对象的一个属性(插件方法里面this
指的是jQuery对象),也就是selector
用于查找元素。
例如:
$('div').selector -> div
$('div input').selector -> div input
$('div').find('input').selector -> div input
因此,上述代码用于注册一个委托事件处理程序,该事件处理程序针对初始化插件的元素
.on("click", "selector", callback)
对比 .click()
.click()
将处理程序直接附加到选定的选择器。这意味着源自该选择器或其 children 之一的任何事件都将触发回调。
.on("click", "selector", callback)
将处理程序附加到正文。因为这里所有的元素都是children,所以一切都会匹配。但是,第二个参数 "selector" 将过滤掉除此之外的所有内容。如果您在加载完成后向页面添加元素,这将特别有用,因为您不必再将处理程序附加到新元素。文档上的处理程序将处理所有事情。
this.selector
此 jQuery 插件将您提供的选择器存储为 属性。 this
指的是插件,this.selector
指的是那个属性。传递给 .on()
函数的值几乎可以是任何值。例如 ".classname"
或 "#elementId"
.