Как я могу присвоить свойство объекту jQuery?

Это ориентировано на многопотоковое исполнение без любой потребности в блокировке. Строки являются ссылочными типами, поэтому только ссылка на строку изменяется. Ссылки имеют тип, как, гарантируют, будут атомарными (Int32 в системах на 32 бита и Int64 на 64 битах).

5
задан Nick Craver 2 August 2010 в 01:07
поделиться

2 ответа

jQuery предоставляет концепцию контейнера свойств с помощью метода data .

// set some arbitrary data
$('#selector').data('example-property', exampleValue);

// get the value later
var theValue = $('#selector').data('example-property')

Это позволяет избежать манипуляций с DOM, которые могут быть дорогостоящими с точки зрения производительности.

13
ответ дан 18 December 2019 в 11:59
поделиться

Функция $ создает объект jquery, представляющий элемент dom. Вы можете изменить атрибуты объекта, но эти изменения не будут сделаны родительскими в элементе, который он «представляет», если jquery не знает, что с ними делать (возможно, назначив обработчик события щелчка).

Итак, когда вы делаете При первом выборе он изменяет созданный вами объект, но ничего не делает с фактическим элементом html. Когда вы снова запускаете $, он создает ОТДЕЛЬНЫЙ объект, который не сохраняет изменение атрибута, которое вы сделали для первого.

вы можете внести прямые изменения в объект html: (без jquery)

getElementByID ("theid"). Myprop = "hello world";

в результате:

но установка атрибута объекта jquery просто не поможет. Чтобы получить эквивалентный эффект в jquery, используйте метод .data, который предложил Кен Браунинг. (снова поздно ...): D

1
ответ дан 18 December 2019 в 11:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: