我无法理解一种 jQuery 选择,我希望有人能清楚地向我解释。
它取自这个 Stack Overflow question。
基本上,它有常见的 jQuery: $( selector )
.
但在里面它有$({ y: iFrameScrollY })
。
我以前从未见过这种情况。括号内有和是什么意思?{ ... }
someVal: anotherVal
另外,请为这个问题推荐一个不同的标题,以便其他人更容易找到它。
我无法理解一种 jQuery 选择,我希望有人能清楚地向我解释。
它取自这个 Stack Overflow question。
基本上,它有常见的 jQuery: $( selector )
.
但在里面它有$({ y: iFrameScrollY })
。
我以前从未见过这种情况。括号内有和是什么意思?{ ... }
someVal: anotherVal
另外,请为这个问题推荐一个不同的标题,以便其他人更容易找到它。
将纯 JavaScript 对象包装在 jQuery 对象中,您可以使用一些 jQuery 方法,包括:.data()、.prop()、.bind()、.unbind()、.trigger() 和 .triggerHandler()。
下面是一个取自 jQuery.com 的示例:
// define a plain object
var foo = {foo:'bar', hello:'world'};
// wrap this with jQuery
var $foo = $(foo);
// test accessing property values
var test1 = $foo.prop('foo'); // bar
// test setting property values
$foo.prop('foo', 'foobar');
var test2 = $foo.prop('foo'); // foobar
// test using .data() as summarized above
$foo.data('keyName', 'someValue');
console.log($foo); // will now contain a jQuery{randomNumber} property
// test binding an event name and triggering
$foo.bind('eventName', function (){
console.log('eventName was called');
});
$foo.trigger('eventName'); // logs 'eventName was called'
什么$({ y: iFrameScrollY })
是围绕 JavaScript 对象包装一个 jQuery 选择器对象{ y: iFrameScrollY }
。
声明了 JavaScript 对象{ y: iFrameScrollY }
,这意味着它包含一个名为y
set 的属性,其值为iFrameScrollY
。
通过将对象包装到 jQuery 对象中,可以利用对包装对象执行 jQuery 方法。
有关更多详细信息,请参阅此文档。
这是对函数的调用,该jQuery()
函数被重载以执行许多不同的事情,具体取决于传递的参数。
{someVal : anotherVal}
是一个 JavaScript 对象,其属性名为,someVal
其值等于anotherVal
变量的值。
如果您将这两条信息结合在一起,并查看链接页面,您会看到:
jQuery(对象)
object 要包装在 jQuery 对象中的普通对象。