jquery, добавить переменную к элементу? - PullRequest
12 голосов
/ 17 января 2011

У меня вопрос по поводу jQuery.У меня есть li, который выдвигается, теперь я хочу вспомнить, выпал ли он, поэтому я хочу установить логическую переменную slidedOut.

Можно ли просто добавить его в элемент?Или я должен добавить скрытый div или что-то к элементу?

Ответы [ 3 ]

21 голосов
/ 17 января 2011

Для этого вы можете использовать .data().

Что-то вроде

$("#yourli").data("slidedOut", false);
1 голос
/ 17 января 2011

Другой вариант - использовать CSS-классы. Это особенно полезно, если вы не сохраняете данные (просто флаг) или хотите изменить дизайн для этих <li> s или их дочерних элементов.

  • .addClass('visited') - при необходимости добавьте класс.
  • .hasClass('visited') - Проверяет, имеет ли элемент этот класс.
  • removeClass('visited')
1 голос
/ 17 января 2011

Использование jquery data считается стандартным способом сделать это - хотя существует множество других способов сделать это.

Альтернативой является просто:

 $("#myli")[0].slidedOut = true;
 alert($("#myli")[0].slidedOut);
...