2012-01-07 2 views
1

Возможно ли обработать объект javascript как объект jQuery определенным образом, как назначить ему функциональность jQuery, но избегать работы с деревом DOM браузера для большей эффективности и при добавлении в качестве объекта DOM это функциональность запускается?Объект Js и JQuery

Если возможно, пожалуйста, предоставить некоторые хорошие примеры,

С наилучшими пожеланиями

ответ

4

От jQuery Docs:

В настоящее время только операции, поддерживаемые на простой JavaScript объекты завернутые в JQuery являются: .data(), 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' 
Смежные вопросы