22 декабря 2015
18 июля 2008
35
Пятничные сниппеты. jQuery, часть 3
Новая серия из сериала про сниппеты jQuery. На этот раз не самые очевидные функции.
В прошлых сериях:
1. Пятничные сниппеты. jQuery, часть первая;
2. Пятничные сниппеты. jQuery, часть вторая.
1. Как узнать, имеется ли на странице элемент
Для этого проще всего воспользоваться свойством length:
if ( $('#myDiv').length ) { /* что-то делаем */}
2. Как запретить/разрешить элемент (disable/enable)
// запретить #x
$("#x").attr("disabled","disabled");
// разрешить #x
$("#x").removeAttr("disabled");
3. Как сделать выбор/отмену выбора чекбокса (check/uncheck)
// выбрать #x
$("#x").attr("checked", "checked");
// отменить выбор #x
$("#x").attr("checked","");
4. Как получить значение выбранного элемента в селекте
Рассмотрим такой селект:
<select id="sel">
<option value="1">vremenno</option>
<option value="2">net</option>
</select>
Для того чтобы получить value, достаточно написать
$("select#sel").val();
А вот, чтобы получить текст этого селекта, написать надо
$("#sel option:selected").text();
5. Как выбрать элементы, у которых в ID есть спецсимволы (".", "[", и т.п.)
$("#some.id") // не работает
$("#some\.id") // работает
6. Как определить, прописан ли у элемента класс (эта функция появилась в jQuery 1.2)
$('#something').hasClass("someClass")
Разработчики обещают, что версия 1.3 jQuery выйдет к концу лета текущего года. Я думаю, что мы не оставим это незамеченным.
PS. Это последняя серия сниппетов.
if ( $('#myDiv').is(':hidden') ) $('#myDiv').show();
$('#myDiv').show();
- это не породит ошибку, а результат будет тот же.а зачем в селекторе перед name писать @?
и зачем использовать .attr("value"), если можно просто .val() ?
$("#some.id") // работает
Не понял в чем разница? :)
Как активировать на какой-то странице функцию, если на странице есть определённый элемент div?
Спасибо.
я хочу применить его для всплывающего нового персонального сообщения в моём движке...
т.е. если использовать этот плагин стандартно, то в код страницы нужно написать код окошко и функцию для его вызова через ссылку или что-то другое...
у меня в движке, если у пользователя новое персональное сообщение, то код этого сообщения с текстом выводится на страницу.
А я хочу, чтобы оно выводилось в модальном окошке с помощью этого плагина.
Так вот как можно сделать, если на странице есть элемент (код сообщения с текстом), то автоматом выводилось в окошке?
то вызывалось бы окошко с помощью плагина, в котором будет этот заголовок и текст сообщения.
ЗаголовокТекст сообщения
а как отследить изменение чекбокса пользователем и вызвать при этом к-л событие?