В jQuery имеется три категории методов: одни манипулируют с элементами, подходящими по шаблону; вторые возвращают значения элемента,
а третьи изменяют сами элементы.
Сегодня рассмотрим методы, которые используются для CSS-стилей.
Итак, чтобы добавить какому-либо элементу стиль, необходимо воспользоваться следующим методом:
.css(name,value)
Пример:
$("div").css("border", "1px solid blue");
Данная инструкция обведет div синей рамкой.
В качестве параметров здесь используются названия и значения, применимые в CSS: background, border, font-style, color и т.д.
Если необходимо задать для элемента несколько CSS-правил, то лучше использовать следующую конструкцию:
Данная инструкция обведет div синей рамкой, сделает фон красным, а текст - жирным.
Обратите внимание, что для сложносоставных свойств CSS вроде font-weight и background-color используются иэ эквиваленты из JS:
fontWeight, backgroundColor и т.д.
Перечислим другие методы для работы со стилями:
.addClass(class)
Пример:
$("p:last").addClass("main");
Данная инструкция добавит класс main к последнему элементу параграфа.
.removeClass(class)
Пример:
$("p:even").removeClass("main");
Данная инструкция удалит класс main из всех четных параграфов.
.toggleClass(class)
Пример:
$("p").toggleClass("main");
Данная инструкция удалит класс main из всех параграфов, если он присутствует. И добавит этот класс, если он отсутствует.
.offset()
Пример:
var offDiv=$("div").offset();
Данная инструкция позволяет получить отступы слева и сверху для элемента. Чтобы получить значения конкретного свойства, нужно
использовать следующие свойства: offset.left для отступа слева и offset.top - для отступа сверху.
.height(value)
Пример:
$("div").height();
$("div").height(200);
Данная инструкция позволяет получить (первая строка) и задать (вторая строка) высоту элемента.
.width(value)
Пример:
$("div").width();
$("div").width(200);
Данная инструкция позволяет получить (первая строка) и задать (вторая строка) ширину элемента.
Еще пример:
var widDiv=$("div").width();
$("div.fir").width(300);
Первая строка запишет в переменную widDiv значение ширины первого div-а. Вторая инструкция задаст div-ам класса fir ширину
в 300 пикселов.
Это очень интересная особенность методов jQuery: они используются, как для задания параметров (когда принимаются 2 аргумента),
так и для получения значений этих параметров (если передается один аргумент).
Давайте, используя полученные знания сделаем меню с вкладками, вот такого вида (пощелкайте по вкладкам):
jQuery - CSS
Вкладка 1
Вкладка 2
Вкладка 3
Вкладка 4
Итак, html-код страницы следующий:
jQuery
jQuery - CSS
Вкладка 1
Вкладка 2
Вкладка 3
Вкладка 4
Как видно, все вкладки имеют единый стиль, определяемый классом vkl, а выделенная вкладка имеет класс selected. Внешний вид
пропишем на странице style.css
Осталось самое интересное, а именно функция chang():
function chang(s){
$('.selected').removeClass('selected');
$(s).addClass('selected');
}
Итак, как же работает эта функция? Сначала ищется элемент, который имеет класс selected, и этот класс у него убирается.
Затем (вторая строка) выделенному элементу (он находится по id, переданному в функцию в качестве параметра s) добавляется класс
selected. Вот так все просто.
В следующем уроке узнаем, как с помощью jQuery вставлять целые куски html-кода на страницу и манипулировать ими.