jQuery – это замечательный JavaScript Framework, который подкупает своей простотой в понимании и удобством в использовании. Но изучение надо с чего-то начинать, и лично моё мнение – лучше всего начинать с наглядных примеров, и они далее…
Материалы данной статьи включены в учебник «jQuery для начинающих». Учебник распространяется бесплатно, и сопровождается интерактивными примерами.
Как же все-таки работает jQuery?
Ну для начала Вам понадобится сам фреймворк, его вы сможете скачать с домашней страницы проекта, затем проинициализировать:
1 2 3 | <head> <script type="text/javascript" src="jquery.js"></script> </head> |
А основные моменты Вам поможет понять следующая диаграмма:
Как получить элемент с помощью jQuery?
Для того чтобы понимать как работает селектор Вам все-же необходимы базовые знания CSS, т.к. именно от принципов CSS отталкивается селектор jQuery:
- $(“#header”) – получение элемента с id=”header”
- $(“h3”) – получить все <h3> элементы
- $(“div#content .photo”) – получить все элементы с классом =”photo” которые находятся в элементе div с id=”content”
- $(“ul li”) – получить все <li> элементы из списка <ul>
- $(“ul li:first”) – получить только первый элемент <li> из списка <ul>
Выдвижная панель
Начнем с простенького примера – слайд-панель, она у нас будет двигаться вверх/вниз по клику на ссылке (см. пример)
Реализуем это следующим образом, по клику на ссылку, у нас будет переключаться её класс (между “active” и “btn-slide”), а панелька с id=”panel” будет выдвигаться/прятаться. (класс “active” изменяет позицию фонового изображения, см. CSS файл во вложении).
1 2 3 4 5 6 | $(document).ready( function (){ $(".btn-slide").click( function (){ $(" #panel").slideToggle("slow"); $( this ).toggleClass("active"); }); }); |
Магические исчезновения
Этот пример покажет как можно красиво и легко убирать растворять элементы (см. пример):
Когда мы кликаем по картинке <img class=”delete”>, будет найден родительский элемент <div class=”pane”>, и его прозрачность будет медленно изменяться от opacity= 1.0 до opacity=hide:
1 2 3 4 5 6 7 | $(document).ready( function (){ $(".pane . delete ").click( function (){ $( this ).parents(".pane").animate({ opacity: "hide" }, "slow"); }); }); |
Связанная анимация
Теперь пример посложнее, но он поможет Вам лучше понять jQuery. Всего несколько строк кода заставят квадрат двигаться, изменять размер и прозрачность. (см. пример):
Line 0: когда прогрузилась страница (DOM готов к манипуляциям)
Line 1: привязываемся к событию click для элемента <a class=”run”>
Line 2: манипулируем элементом <div id=”box”> – уменьшаем его прозрачность до 0.1, наращиваем позицию left еще на 400px, со скоростью 1200 (milliseconds)
Line 3: затем медленно изменяем следующие параметры: opacity=0.4, top=160px, height=20, width=20; скорость анимации указывается вторым параметром : “slow”, “normal”, “fast” или в миллисекундах
Line 4: затем opacity=1, left=0, height=100, width=100, скорость – “slow”
Line 5: затем top=0, скорость – “fast”
Line 6: затем slideUp (с дефолтной скоростью анимации – “normal”)
Line 7: затем slideDown, скорость – “slow”
Line 8: возвращаем false для того чтобы браузер не перешел по ссылке
01 02 03 04 05 06 07 08 09 10 11 12 | $(document).ready( function (){ $(".run").click( function (){ $(" #box").animate({opacity: "0.1", left: "+=400"}, 1200) .animate({opacity: "0.4", top: "+=160", height: "20", width: "20"}, "slow") .animate({opacity: "1", left: "0", height: "100", width: "100"}, "slow") .animate({top: "0"}, "fast") .slideUp() .slideDown("slow") return false ; }); }); |
Гармошка #1
Пример реализации “гармошки”. (см. пример)
Теперь приступим к разбору полетов:
Первой строчкой мы добавляем класс “active” первому элементу <h3> внутри <div class=”accordion”> (класс”active” отвечает за позиционирования фонового рисунка – иконки со стрелочкой). Во второй строчке мы прячем все не первые <p> элементы внутри <div class=”accordion”>.
Когда происходит клик по заголовку <h3>, для следующего в нём элемента <p> будет применен эффект slideToggle, затем для всех остальных элементов <p> будет применен эффект slideUp. Следующие действие изменяет класс заголовка на “active”, затем ищем все остальные заголовки <h3> и убираем у них класс “active”
01 02 03 04 05 06 07 08 09 10 11 12 13 | $(document).ready( function (){ $(".accordion h3:first").addClass("active"); $(".accordion p:not(:first)").hide(); $(".accordion h3").click( function (){ $( this ).next("p").slideToggle("slow") .siblings("p:visible").slideUp("slow"); $( this ).toggleClass("active"); $( this ).siblings("h3").removeClass("active"); }); }); |
Гармошка #2
Этот пример схож с предыдущим, лишь отличается тем, что мы указываем открытую по умолчанию панельку. (см. пример)
В CSS у нас указано для всех элементов <p> display:none. Теперь нам необходимо открыть третью панель. Для этого мы можем написать следующее $(“.accordion2 p”).eq(2).show(), где eq обозначает равенство. Помните, что индексирование начинается с нуля:
01 02 03 04 05 06 07 08 09 10 11 12 13 | $(document).ready( function (){ $(".accordion2 h3").eq(2).addClass("active"); $(".accordion2 p").eq(2).show(); $(".accordion2 h3").click( function (){ $( this ).next("p").slideToggle("slow") .siblings("p:visible").slideUp("slow"); $( this ).toggleClass("active"); $( this ).siblings("h3").removeClass("active"); }); }); |
Анимация для события hover #1
Данный пример поможет создать Вам очень красивую анимацию для события hover (надеюсь, Вы знаете что это?), (см. пример):
Когда Вы наводите мышкой на элемент меню (mouseover), происходит поиск следующего элемента <em>, и анимируется его прозрачность и расположение:
1 2 3 4 5 6 7 | $(document).ready( function (){ $(".menu a").hover( function () { $( this ).next("em").animate({opacity: "show", top: "-75"}, "slow"); }, function () { $( this ).next("em").animate({opacity: "hide", top: "-85"}, "fast"); }); }); |
Анимация для события hover #2
Данный пример чуть-чуть посложней предыдущего примера: для формирования подсказки используется атрибут linktitle (см. пример)
Первым делом добавим тэг <em> в каждый элемент <a>. Когда произойдет событие mouseover, мы возьмем текст из атрибута “thetitle” и сохраним его в переменной “hoverText”, затем этот текст будет вставлен в тэг <em>:
01 02 03 04 05 06 07 08 09 10 11 12 13 | $(document).ready( function (){ $(".menu2 a").append("&lt;em&gt;&lt;/em&gt;"); $(".menu2 a").hover( function () { $( this ).find("em").animate({opacity: "show", top: "-75"}, "slow"); var hoverText = $( this ).attr("title"); $( this ).find("em").text(hoverText); }, function () { $( this ).find("em").animate({opacity: "hide", top: "-85"}, "fast"); }); }); |
Кликабельные блоки
Этот пример демонстрирует как сделать кликабельным блок с текстом, а не только ссылку (см. пример):
Создадим список <ul> с классом class=”pane-list” и мы хотим сделать элементы <li> кликабельными. Для начала привяжемся к событию click для элемента “.pane-list li”; когда пользователь будет кликать по элементу списка, наша функция произведет поиск тэга <a> и сделает редирект на страницу указанную в атрибуте href.
1 2 3 4 5 6 7 | $(document).ready( function (){ $(".pane-list li").click( function (){ window.location=$( this ).find("a").attr("href"); return false ; }); }); |
Складывающиеся панельки
Ну а теперь чуть-чуть скомбинируем предыдущие примеры и создадим ряд складывающихся панелек (наподобие как в Gmail организован inbox). (см. пример)
- скрываем все элементы <div class=”message_body”> после первого.
- скрываем все элементы <li> после пятого
- клик по <p class=”message_head”> – вызывает метод slideToggle для следующего элемента <div class=”message_body”>
- клик по <a class=”collpase_all_message”> – вызывает метод slideUp для всех <div class=”message_body”>
- клик по <a class=”show_all_message”> – скрывает элемент, и отображает <a class=”show_recent_only”>, так же вызывается метод slideDown для всех <li> послепятого
- клик по <a class=”show_recent_only”> – скрывает элемент, и отображает <a class=”show_all_message”>, так же вызывается метод slideUp для всех <li> после пятого
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | $(document).ready( function (){ //hide message_body after the first one $(".message_list .message_body:gt(0)").hide(); //hide message li after the 5th $(".message_list li:gt(4)").hide(); //toggle message_body $(".message_head").click( function (){ $( this ).next(".message_body").slideToggle(500) return false ; }); //collapse all messages $(".collpase_all_message").click( function (){ $(".message_body").slideUp(500) return false ; }); //show all messages $(".show_all_message").click( function (){ $( this ).hide() $(".show_recent_only").show() $(".message_list li:gt(4)").slideDown() return false ; }); //show recent messages only $(".show_recent_only").click( function (){ $( this ).hide() $(".show_all_message").show() $(".message_list li:gt(4)").slideUp() return false ; }); }); |
Имитация Backend’a WordPress’a
Я думаю многие из читателей сталкивались с админской частью wordpress’a, точнее с редактирование комментариев. Попробуем сделать что-то подобное. Для анимации фонового цвета нам понадобиться соответствующий плагин для jQuery. (см. пример)
- добавим класс “alt” к каждому чётному элементу <div class=”pane”> (данный класс изменяет цвет фона элемента)
- клик по <a class=”btn-delete”> инициирует появление сообщения (alert), так же происходит анимация фонового цвета и прозрачности (backgroundColor и opacity) для <div class=”pane”>
- клик по <a class=”btn-unapprove”> – вызывает анимацию фона у <div class=”pane”> (цвет изменяется на желтый и обратно) и добавляет класс “spam”
- клик по <a class=”btn-approve”> – вызывает анимацию фона у <div class=”pane”> (цвет изменяется на зеленый и обратно) и удаляет класс “spam”
- клик по <a class=”btn-spam”> – вызывает анимацию фона у <div class=”pane”> (цвет изменяется на красный), и изменяет параметр “opacity” на “hide”
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | //don't forget to include the Color Animations plugin $(document).ready( function (){ $(".pane:even").addClass("alt"); $(".pane .btn- delete ").click( function (){ alert("This comment will be deleted!"); $( this ).parents(".pane").animate({ backgroundColor: " #fbc7c7" }, "fast") .animate({ opacity: "hide" }, "slow") return false ; }); $(".pane .btn-unapprove").click( function (){ $( this ).parents(".pane").animate({ backgroundColor: " #fff568" }, "fast") .animate({ backgroundColor: " #ffffff" }, "slow") .addClass("spam") return false ; }); $(".pane .btn-approve").click( function (){ $( this ).parents(".pane").animate({ backgroundColor: " #dafda5" }, "fast") .animate({ backgroundColor: " #ffffff" }, "slow") .removeClass("spam") return false ; }); $(".pane .btn-spam").click( function (){ $( this ).parents(".pane").animate({ backgroundColor: " #fbc7c7" }, "fast") .animate({ opacity: "hide" }, "slow") return false ; }); }); |
Галерея изображений
Простейший пример реализации галереи, без перезагрузки страницы. (см. пример)
Для начала добавим тэг <em> в заголовки <h2>
По клику на изображения в <p class=thumbs> выполняем следующие действия:
- сохраняем значение атрибута “href” в переменной “largePath”
- сохраняем значение атрибута “title” в переменной “largeAlt”
- заменяем в элементе <img id=”largeImg”> значение атрибута “scr” и “alt” значениями из переменных “largePath” и “largeAlt”
- так же присваиваем элементу “h2 em” значение из “largeAlt”
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 | $(document).ready( function (){ $("h2").append( '<em></em>' ) $(".thumbs a").click( function (){ var largePath = $( this ).attr("href"); var largeAlt = $( this ).attr("title"); $(" #largeImg").attr({ src: largePath, alt: largeAlt }); $("h2 em").html(" (" + largeAlt + ")"); return false ; }); }); |
Стилизируем ссылки
Большинство нормальных браузеров легко понимают когда мы хотим добиться от них стилизации ссылок для различного типа файлов, для это цели можно использовать следующее CSS правило: a[href $=’.pdf’] { … }. Но как обычно IE6 отличается умом и сообразительностью, по этой причине будем ставить ему костыли используя jQuery. (см. пример)
Для начала добавим класс для каждой ссылки, в соответствии с типом файла.
Затем выберем все элементы <a> которые не содержат ссылки на “http://www.webdesignerwall.com” и не начинающиеся на “#” в “href”, затем добавим им класс “external” и устанавливаем target= “_blank”.
01 02 03 04 05 06 07 08 09 10 11 12 13 | $(document).ready( function (){ $("a[href$=pdf]").addClass("pdf"); $("a[href$=zip]").addClass("zip"); $("a[href$=psd]").addClass("psd"); $("a:not([href*=http: //www.webdesignerwall.com])").not("[href^=#]") .addClass("external") .attr({ target: "_blank" }); }); |
Так же Вы можете посмотреть все примеры или скачать jQuery tutorial for beginners.
Вольный перевод: http://www.webdesignerwall.com/tutorials/jquery-tutorials-for-designers/
Так же много полезных ссылок по jQuery найдете на следующей странице: http://blog.termit.name/jquery/
Может кому пригодиться еще библиотека для PHP: http://anton.shevchuk.name/php/php-library-for-jquery/
Цикл статей
- jQuery для начинающих
- jQuery для начинающих. Часть 2. JavaScript Меню
- jQuery для начинающих. Часть 3. AJAX
- jQuery для начинающих. Часть 4. Селекторы
- jQuery для начинающих. Часть 5. Эффекты
- jQuery для начинающих. Часть 6. События
- jQuery для начинающих. Часть 7. Пишем плагины
- jQuery для начинающих. Часть 8. Расширяем фильтры
- jQuery для начинающих. Часть 9. Пишем плагины анимации
И классный дизайн у сайта: минималистично и глаз радует. +++
Да, дизайн тоже радует! Класс!
столкнулся с такой проблемой
var
all = {
"1148"
:
"All American Hockey League "
,
"1131"
:
"American Hockey League"
,
"1146"
:
"Central Hockey League "
,
"1144"
:
"East Coast Hockey League"
,
"1130"
:
"National Hockey League"
,
"1147"
:
"Southern Professional Hockey League "
};
for
(id
in
all) {
console.log(id+
'-'
+all[id]);
}
в ff3.5 печатает правильно, а в chrome сначала сортирует, а потом выводит.
попробывал через jquery – тоже самое
$.each(all, function(id, title) {
console.log(id+’-‘+title);
});
Как заставить соблюдать порядок?
Порядок перечисления свойств не определен.
(http://javascript.ru/for..in)
Ох, спасибище огромное за статью!
Для новичка просто шикарно!
Спасибо огромное! Статья супер!
Здравствуйте! Пока не смог оценить Ваши уроки. Причина в том, что не могу скачать jquery.js
При попытке установки я получаю сообщение о том, что элемент “window” не известен.
В связи с этим у меня два вопроса
1. Как все же установить jquery?
2. В одной из директорий моего компьютера(ICQ Xtraz) я обнаружил файл jquery.gs. Можно ли им воспользоваться? Нужно ли для этого перенести его в директорию, где находится мой проект?
Женя ну ты даёшь. Или ты притворяешься? Какая директория компьютера? Этот файл просто загружается на хостинг в папку js если она там имеется или в любую другую и подгружается как написано в статье.
Ага. Это я сообразил. Я думал, что нужно инсталлировать FrameWork и для этого нужен какой-то файл типа exe или setup.
Теперь второй вопрос. У вас сказано, что файл CSS находится во вложении. Где это? Я не смог его найти.
Статья просто великолепная. Очень помог разобраться.
Подскажите с вкладками на shopcms не работают :(
Да, толково написано, спасибо. Хотя у начинающих пожалуй есть пара вопросов. Буду добивать их в англ мануалах наверное.
Например мне кажется в начале, вводной части надо было пояснить зачем и как используется $(this).
Здравствуйте, Антон! Спасибо за хорошую вводную статью.
Возник следующий вопрос. Реализовывая “гармошку” не могу понять, как вы сделали, чтобы картинка указателя активного заголовка меняла свое направление. Судя по коду, картинка вызывается только 1 раз. В чем секрет?
Спасибо!
Николай. Картинка меняется через css – в активной позиции в css класс .active получает background-position: bottom; ну или иным образом бекграунд прилегает к нижней а не к верх части
Спасибо.
Доброго дня! может я что-то не понимаю (что скорее всего), но не получается у меня сделать на 1 странице и слайдер и лайтбокс…
К счастью, CSS3 сейчас справляется с 99% операций jquery гораздо лучше и красивее, не нагружая так процессор. Да и код проще в разы:)))
js не серверный а клиентский язык, нагружать сервер он не может. Только конечно если не использовать ajax query.
Добрый день,
подскажите, пожалуйста, как к этому коду прикрутить “+” – при скрытом блоке и “-” – при ооткрытом блоке:
function
facechange (objName) {
if
( $(objName).css(
'display'
) ==
'none'
) {
$(objName).animate({height:
'show'
}, 400);
}
else
{
$(objName).animate({height:
'hide'
}, 200);
}
}
Вызываю так:
<
a
href
=
"#"
onclick
=
"facechange('#div1'); return false"
>+ Текст</
a
>
<
div
id
=
"div1"
style
=
"display: none;"
>
Текст в скрытом слое <
br
>
</
div
>
<
a
href
=
"#"
onclick
=
"facechange('#div2'); return false"
>+ Текст2</
a
>
<
div
id
=
"div2"
style
=
"display: none;"
>
Текст2 в скрытом слое <
br
>
</
div
>
Спасибо огромное, статьи супер! всё просто и понятно!!! добавил в закладки)
Спасибки, помогло. Но один вопрос:
В первом примере кнопка “Slide-panel” двигается вместе с
самой панелью, а мне нужно, что-бы по нажатию на кнопку панель просто выезжала из неё. Заранее спасибо.
Огромное спасибо! Самая шикарная статья для новичков.
Большое спасибо, очень полезный ресурс. В избранном)
Спасибо, большое! Есть в интернете настоящие мужики!
А как сделать, чтобы у “гармошки” при нажатии на уже открытую вкладку она НЕ закрывалась?
Очевидно, лучше завести для неё новый класс или проверять через булеву переменную. Но с синтаксисом JS мало знаком, как реализовать не знаю. Подскажешь?
А как в Вашем слайдер добавить элементы управления? вперед назад?
Денис, надо забрать .sibling, а перед ним поставить точку с запятой
как завтсвить это работать в версии jquery 1.6.2 ??
$(
'#id'
).animate({backgroundPosition:
'100px 0px'
},1000 );
Нет ни ошибок , не движения бекграунда. В более старых версиях jquery все работает хорошо.
Запрос на официальный сайт ничего не дал. В документации по этому поводу ничего нет. Вот и остается лишь использовать старые версии или использовать отдельный скриптик backgroundposition.js
Добрый день. Не даёт покоя следующий вопрос.
Например, есть . Далее, при определённом событии, скрипт изменяет параметр src для этого изображения на ‘src=’2.gif’. К данному изображению подключен плагин lightbox. Когда он срабатывает – в увеличенном изображении отображается по прежнему 1.gif. Я так понимаю, всё логично, т.к. в DOM с которым работает lightbox по прежнему для изображения id=’pic’ путь содержит ‘1.gif’.
Интересует вопрос, как всё же реализовать вывод нужного изображения через lightbox, путь к которому изменяется динамически.
В приведённом ниже примере, по клику изменяется путь к изображению, после чего инициализирую плагин lightbox(вариант не проходит).
показать чистый исходник в новом окнеСкрыть/показать номера строкпечать кода с сохранением подсветки
01 $(function() {
02
03 $(“.items img”).click(function() {
04 // calclulate large image’s URL based on the thumbnail URL (flickr specific)
05 var url = $(this).attr(“src”).replace(“_t”, “”);
06
07 // get handle to element that wraps the image and make it semitransparent
08 var wrap = $(“#image_wrap”).fadeTo(“medium”, 0.5);
09
10 // the large image from flickr
11 var img = new Image();
12
13 // call this function after it’s loaded
14 img.onload = function() {
15
16 // make wrapper fully visible
17 wrap.fadeTo(“fast”, 1);
18
19 // change the image
20 wrap.find(“img”).attr(“src”, url);
21
22 };
23
24 // begin loading the image from flickr
25 img.src = url;
26
27 // activate item
28 $(“.items img”).removeClass(“active”);
29 $(this).addClass(“active”);
30
31 //инициализируем lightbox
32 jQuery(“.light”).lightBox({
33 //overlayBgColor: ‘#FFF’,
34 overlayOpacity: 0.6,
35 show_info:true,
36 containerResizeSpeed: 350
37 //txtImage: ‘Изображение’,
38 //txtOf: ‘из’
39 });
Мне не очень дизайн сайта. А информация очень хорошая. Спасибо.
Пожалуйста помогите:
имею див в нём две ссылки, хочу чтобы при нажатии на ссылку менялся класс дива (на другой класс другие стили в CSS) – всё довольно таки просто, но класс не меняеться:
Тест-тест
$(document).ready(function(){
$(“.blog”).click(function(){
$(“#menu3”).toggleClass(“menu4”);
});
});
Блог
Портфолио
body {
background-color
:
#999
;
margin
:
0px
;
padding
:
0px
;}
#menu
3
{
background-color
:
#0C6
;}
#menu
4
{
background-color
:
#FF3
;}
Ничего не меняется ! почему ?
Денис, toggleClass переключает значения атрибута class, если таковой есть у объекта. у вас y div есть атрибут id, а class, поэтому и переключать нечего.
Должно быть что-то такое:
….
а в стилях:
.menu3 {background-color:#0C6;}
.menu4 {background-color:#FF3;}
скрипт тогда будет:
$(document).ready(function(){
$(“.blog”).click(function(){
$(“.menu3″).toggleClass(“menu4″);
});
});
Пожалуйста помогите:
имею див в нём две ссылки, хочу чтобы при нажатии на ссылку менялся класс дива (на другой класс другие стили в CSS) – всё довольно таки просто, но класс не меняеться:
<!
DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
>
<
meta
http-equiv
=
"Content-Type"
content
=
"text/html; charset=utf-8"
/>
<
title
>Тест-тест</
title
>
<
script
type
=
"text/javascript"
src
=
"jquery.js"
></
script
>
<
link
href
=
"styles.css"
rel
=
"stylesheet"
type
=
"text/css"
/>
</
head
>
<
script
type
=
"text/javascript"
>
$(document).ready(function(){
$(".blog").click(function(){
$("#menu3").toggleClass("menu4");
});
});
</
script
>
<
body
>
<
div
id
=
"menu3"
>
<
a
href
=
"#"
class
=
"blog"
>Блог</
a
>
<
a
href
=
"#"
class
=
"Portfolio"
>Портфолио</
a
>
</
div
>
<
div
id
=
"content"
></
div
>
</
body
>
</
html
>
[css]
body {background-color:#999; margin: 0px; padding: 0px;}
#menu3 { background-color:#0C6;}
#menu4 {background-color:#FF3;}
[/css]
Спасибо братан за инфу! Это + русские доки по Jquery и никаких проблем с этим фреймворком, а то нигде нормального описания не найти было.
Статья очень хорошая!
Большое спасибо Автору!
Антон, большое спасибо за ценную и русскую инфу. Подскажите, пожалуйста, такое:
мне нужно сделать горизонтальное выпадающее меню с 3 уровнями из обычного ul li списка, типа
пункт1 пункт2 пункт3 пункт4
подпункт1
подпункт2
подпункт2.1
подпункт2.2
подпункт3
подпунктN
Подменю должны выпадать при наведении курсора. Так и происходит при наведении на пункт в гориз. ряде, но при наведении на подкатегорию ее дочерние элементы залазят за следующий элемент.
Вот мой код сейчас:
<script type=
"text/javascript"
>
$(document).ready(
function
(){
$(
"ul.sf-menu li>ul"
).hide();
$(
"a span"
).mouseover(
function
(){
$(
this
).parent().next().toggle(200);
return
false
;
});
$(
"ul.sf-menu li ul"
).mouseleave(
function
(){
$(
"ul.sf-menu li ul"
).hide();
return
false
;
});
});
</script>
Подскажите пожалуйста, как это слелать?
Уважаемый автор!
Как у Вас интересно реализованы иконки соц.закладок)) Расскажите, как также сделать и на своем сайте?)
Заранее благодарю.
Добрый день,
у меня вопрос следующего содержания.
У меня на сайте реализована разбивка текста с помощью jquery (jpagination) и в этом тексте у меня есть ссылка на другую страницу сайта (ссылка работает). Но я не могу реализовать возврат с другой страницы на исходный текст в каталоге. Ссылка, с которой должен быть возврат выгдядит таким образом
обратно к каталогу »
До разбивки ссылка работала, после разбивки ссылка возвращает меня на первую страницу каталога, а хотелось бы, чтобы возврат происходил на ту же страницу каталога, на которой ссылка.
Помогите пожалуйста, желательно подробное объяснение.
Заранее спасибо
Добрый день. Скажите,пожалуйста, как сделать чтобы в гармошке были все разделы закрытыми, в том числе и первый?
Спасибо
Блин, я нифига не понимаю как мне вообще это всё делать :( Даже первый пример не могу понять как сделать :( Люди добрые, подскажите!
Чтобы подключить Jquery нужно зайти к ним на официальный сайт http://jquery.com/ , выбрать либо Production (31KB, Minified and Gzipped), либо Development (229KB, Uncompressed Code) (а в чем разница между ними?) и нажать на Download, затем появится много, много текста, его скопировать, вставить в блокнот и сохранить с именем, например Jquery.js. Я правильно все понял? А то я вообще нуб полный :(
А дальше что? Дальше идет первый пример “Выдвижная панель” и что с ним делать, как эту выдвижную панель можно сделать? :((((
P.S. У меня в IE6 постоянно появляется сообщение про ActiveX как мне можно от него избавиться чтобы оно не появлялось вовсе?
Плиииз, введите в курс дела, а дальше я думаю что уже разберусь. Понять хотя бы как первый пример делается. :(
Поставь в первой или во второй строчке HTML файла строку
Ответ на P.S.
Поставь в первой или во второй строчке HTML файла строку
<!-- saved from url=(0014)about:internet -->
Здравствуйте подскажите интересный скрипт всплывающего окна с памятью за закрытие! нужнореализовать при заходе на сайт -вывод информации о событие! после закрытия чтоб это окно всплывало этому человеку через сутки.
Это вам надо копать в сторону куки, сессий и т.п., посмотрите плагин jQuery Session например. Сомневаюсь чтобы можно было найти уже готовое окно, удовлетворяющее вашим требованиям. Придется ручками прикручивать. =)
Как сделать выпдвижную панель в первом примере с права???
Подскажите, как сделать эту панельку, выдвижную (пример 1) снизу, справа. или вообще в любом месте
2 Макс, 2 Алекс: С помощью CSS. Задаете для всей панельки
position
:
absolute
;
float
:
right
;
right
:
10px
;
/* отступ справа */
top
:
10px
;
/* отступ сверху */
Готовый пример можете найти на моем сайте: http://aboutfilmz.ru/ панелька “Администрирование” в правом верхнем углу как раз так и сделана.
Автору статьи большое спасибо за публикацию. Примеры 2,4 и 6 как раз то что давно искал.
Как сделать так, чтобы при клике на элементе с одним классом, элемент с другим классом менял свойство с hidden на visible. Я делаю так:
$(document).ready(function(){
$(“.btn-go”).click(function(){
$(“.box:visability”).addClass(‘visible’);
});
});
http://api.jquery.com/visible-selector/
один из вариантов:
$(‘.btn-go’).click(function(){
$(‘.box’).css({‘visibility’:’visible’});
});
Здравствуйте. У меня два списка. При наведени на пункт первого списка показывается тотже по номеру пункт второго списка. В итоге получается куча одинакового кода. Не подскажите как сделать цикл из этого?
$(document).ready(function(){
$(“#slide-photo li:not(:first)”).hide();
$(“#slide-text li:first”).addClass(“active”);
$(“#slide-text li”).eq(0).mouseover(function(){
$(“#slide-photo li”).eq(0).show();
$(“#slide-photo li:not(:eq(0))”).hide();
$(“#slide-text li”).addClass(“active”);
$(this).siblings(“#slide-text li”).removeClass(“active”);
return false;
});
$(“#slide-text li”).eq(1).mouseover(function(){
$(“#slide-photo li”).eq(1).show();
$(“#slide-photo li:not(:eq(1))”).hide();
$(“#slide-text li”).addClass(“active”);
$(this).siblings(“#slide-text li”).removeClass(“active”);
return false;
});
$(“#slide-text li”).eq(2).mouseover(function(){
$(“#slide-photo li”).eq(2).show();
$(“#slide-photo li:not(:eq(2))”).hide();
$(“#slide-text li”).addClass(“active”);
$(this).siblings(“#slide-text li”).removeClass(“active”);
return false;
});
});
Отличная статья! Спасибо!
Спасибо! Антон! Твоя статьи очень помогают в изучении и применении CSS и JavaStript!)))
Антон! Подскажи, пожалуйста, как сделать так чтобы блоки в Анимация для события hover #1 были в вертикальном положении один под другим! Спасибо!