2012-01-07 75 views
1

是否有可能以某种方式将jQuery对象作为jQuery对象来使用, 就像分配给它的jQuery功能一样,但避免使用浏览器的DOM树以获得更高的效率,并且当作为DOM对象附加时功能被触发?Js对象和jquery

如果可能的话,请提供一些很好的例子,

问候

回答

4

jQuery Docs:支持普通的JavaScript

目前,唯一的操作对象 包裹在jQuery的是:。数据(),。prop(),。bind(),.unbind(),。trigger()和.triggerHandler()。在普通对象上使用.data()(或任何需要 .data())的方法将导致名为jQuery {randomNumber}(例如jQuery123456789)的对象 上的新属性。

你可以将一个普通对象包装在一个jQuery对象中并使用这些函数。

// 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' 

在同一页面

而且