如何在范围外使用jquery选定对象?
使用上述代码,我将把一个输入对象作为参数如何在范围外使用jquery选定对象?,jquery,Jquery,使用上述代码,我将把一个输入对象作为参数obj传递到函数foo。 我应该如何使用obj?我是否需要重新运行选择器,比如$(obj)来使用所有jquery特定的方法 还有一个问题:答案是我不需要再次用$()包装obj。如果我用$(obj)重新包装obj,会发生什么?(假设函数foo可以同时接受jquery选定对象和非jquery选定对象)您正在传递jquery对象,因此无需再次包装$() 您是否尝试在foo函数中运行jQuery函数 /* get every click event on inpu
obj
传递到函数foo
。
我应该如何使用obj
?我是否需要重新运行选择器,比如$(obj)
来使用所有jquery特定的方法
还有一个问题:答案是我不需要再次用$()包装
obj
。如果我用$(obj)
重新包装obj
,会发生什么?(假设函数foo
可以同时接受jquery选定对象和非jquery选定对象)您正在传递jquery对象,因此无需再次包装$()
您是否尝试在foo
函数中运行jQuery函数
/* get every click event on input tags and send it to foo */
$('input').click( function() {
foo($(this));
});
function foo(obj) {
/* do something with obj.. */
}
还有一个问题:答案是我没有必要再用$()来包装obj。如果我用$(obj)重新包装obj会发生什么?(假设函数foo可以接受jquery选择的对象和非jquery选择的对象)
您只需执行
obj[0]
即可获得原始此
对象 您正在传递jQuery对象,因此无需再次包装$()
您是否尝试在foo
函数中运行jQuery函数
/* get every click event on input tags and send it to foo */
$('input').click( function() {
foo($(this));
});
function foo(obj) {
/* do something with obj.. */
}
还有一个问题:答案是我没有必要再用$()来包装obj。如果我用$(obj)重新包装obj会发生什么?(假设函数foo可以接受jquery选择的对象和非jquery选择的对象)
您只需执行
obj[0]
即可获得原始此
对象 否。如果是jQuery对象,则可以使用jQuery方法,而无需再次使用$引用它。否。如果是jQuery对象,则可以使用jQuery方法,而无需再次使用$引用它。否,您已经在传递jQuery对象,因此无需重新包装。但由于jQuery事件处理程序在回调中将元素分配为this
,因此可以这样编写:
$('input').click( function() {
foo($(this));
});
function foo(obj) {
console.log(obj.val()); //should print the value in the console.
}
不,您已经在传递jQuery对象,因此无需重新包装。但由于jQuery事件处理程序在回调中将元素分配为
this
,因此可以这样编写:
$('input').click( function() {
foo($(this));
});
function foo(obj) {
console.log(obj.val()); //should print the value in the console.
}
不,您可以从引用中再次使用对象,无需重新选择。不,您可以从引用中再次使用对象,无需重新选择。正确。使用
$()
选择器包装jQuery对象不会有任何伤害。如果您正在编写一个插件,它可以采用任何一种对象类型,那么最好用jQuery选择器包装它。@thkang它不应该导致任何硬的.Correct。使用$()
选择器包装jQuery对象不会有任何伤害。如果您正在编写一个插件,它可以采用任何一种对象类型,那么最好使用jQuery选择器将其包装起来。@thkang它应该不会导致任何困难。