В этих случаях вы должны придерживаться getElementById()
, например:
document.getElementById('example').innerHTML
IE любит смешивать элементы с атрибутами name
и ID
в глобальное пространство имен, поэтому лучше всего указать, что вы пытаетесь получить.
Вы можете сделать это, используя data-
атрибуты , хотя ( часть спецификации HTML5 ), например:
<li data-something="CommonLi"></li>
jQuery даже построил -в поддержке их в 1.4.3+, например:
$("li").data("something") //"CommonLi"
Для других ваших вопросов:
Я бы лично порекомендовал вам использовать встроенный метод jquery для сохранения данных с каждым элементом. Ниже приведен фрагмент кода для сохранения данных:
$("ul").data("CommonUl");
$("li").data("CommonLi");
Если вы планируете использовать несколько атрибутов, я предлагаю установить уникальный атрибут пространства имен, например
.<li data-yourapp>...</li>
и используйте этот атрибут как хеш-таблицу
$("li").data("yourapp", {
points : 2000,
life : 1,
weapons : {
firegun : 0,
missiles : 12
}
});
таким образом, вы уменьшите доступ к элементу и получите все пользовательские данные один раз