我无法理解一种jQuery选择,我希望有人能以清晰的语言向我解释。
它取自this Stack Overflow question。
基本上,它有常见的jQuery:$(selector)
。
但它里面有$({ y: iFrameScrollY })
。
我从来没有见过这个。 括号内有{ ... }
和someVal: anotherVal
是什么意思?
此外,请为这个问题推荐一个不同的标题,以使其他人更容易找到它。
我无法理解一种jQuery选择,我希望有人能以清晰的语言向我解释。
它取自this Stack Overflow question。
基本上,它有常见的jQuery:$(selector)
。
但它里面有$({ y: iFrameScrollY })
。
我从来没有见过这个。 括号内有{ ... }
和someVal: anotherVal
是什么意思?
此外,请为这个问题推荐一个不同的标题,以使其他人更容易找到它。
什么$({ y: iFrameScrollY })
确实是环绕JavaScript对象{ y: iFrameScrollY }
一个jQuery选择对象。
JavaScript对象声明为{ y: iFrameScrollY }
,这意味着它包含一个名为y
的属性,其值设置为iFrameScrollY
的值。
通过将对象封装到jQuery对象中,可以对包装对象执行jQuery方法。
有关更多详细信息,请参阅此documentation。
这是对jQuery()
函数的调用,根据传递的参数,它被重载以执行许多不同的操作。
{someVal : anotherVal}
是一个JavaScript对象,其属性名为someVal
,其值等于anotherVal
变量的值。
如果你加入这两个信息拼在一起,并期待在链接页面,你会看到这一点:
的jQuery(对象)
对象的普通对象在一个jQuery包目的。
包装普通的JavaScript对象内jQuery对象,你可以使用一些jQuery方法包括:(),.trigger()和.triggerHandler。数据(),.道具(),. bind()的,.unbind() 。
下面是从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'
这将是与对象包装的jQuery选择器。 http://api.jquery.com/jQuery/ – 2012-08-13 09:30:08
关于'{}'语法,这是一个JavaScript对象字面量(也称为对象初始化程序)。有关详细信息,请阅读[使用对象](https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Working_with_Objects)或其他有关对象的JS教程。如果你以前没有见过,那么当我根据[$()'函数文档](http://api.jquery.com/jquery)的说法,它不会对你有意义/),当你将一个对象传递给'$()'时,它返回包装在一个jQuery对象中的对象。 – nnnnnn 2012-08-13 09:30:33
感谢Dan博士和nnnnnn,这真的很有帮助。我会阅读这些文档。 – shrewdbeans 2012-08-13 09:34:35