Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.11.2008, 17:58
Jomhan
 
Сообщений: n/a

Нужен совет по click(function)
В HTML выводятся изображения:

<div class="content">
<img src="img/1.jpg" >
<img src="img/2.jpg" >
<img src="img/3.jpg" >
<img src="img/4.jpg" >
<img src="img/5.jpg" >
<img src="img/6.jpg" >
<img src="img/7.jpg" >
<img src="img/8.jpg" >
<img src="img/9.jpg" >
</div>

В скрипте прописываю:

$(document).ready(function(){
$("a#create").click(function(){$("div#content").lo ad("create.html");});

$(".content img").hover(
function () {
$(this).addClass('imageover');
},
function()
{
$(this).removeClass('imageover');
}
);

$(".content img").click(function () {
$(this).toggleClass('imagehover').fadeOut(100).fad eIn(50).fadeOut(50).fadeIn(500);
}


);

});

Вопрос: toggleClass выбирает и подсвечивает картинку, по которой прошел щелчек мыши. А как сделать так, чтобы щелчек выбирал и подсвечивал только текущую картинку, а с остальных выделение сбрасывал? Нужно, чтобы картинки работали а-ля checkbox. Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 11.11.2008, 18:26
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 09.07.2008
Сообщений: 3,873

Ну выполните для остальных картинок тоже toggleClass
$(".content img").click(function () {
  $(".content img").toggleClass('imagehover');
  $(this).toggleClass('imagehover').fadeOut(100).fad eIn(50).fadeOut(50).fadeIn(500);
});
Ответить с цитированием
  #3 (permalink)  
Старый 11.11.2008, 20:07
Jomhan
 
Сообщений: n/a

Не выходит. Получается, что нажатие на картинку либо включает тоггл, либо выключает у ВСЕХ картинок. Может быть я не корректно описал задумку.

Необходимо сделать так, чтобы щелкая на картинку она выбиралась (подсвечивалась), но только она ОДНА. Тоггл решает это дело, но при щелчке на вторую картинку, она выбирается, и выбранных картинок становится две, а это мне не подходит. Представьте, что эти картинки - список радиобаттон (ах, вот где я ошибся, обозвал их чекбоксами)
Ответить с цитированием
  #4 (permalink)  
Старый 11.11.2008, 20:27
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Что мешает всем сделать removeClass?
Ответить с цитированием
  #5 (permalink)  
Старый 11.11.2008, 20:46
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 09.07.2008
Сообщений: 3,873

а ну да там вместо toggleClass должно removeClass стоять, не подумал… картинок то много
Ответить с цитированием
  #6 (permalink)  
Старый 11.11.2008, 21:16
Jomhan
 
Сообщений: n/a

Все ребят, спасибо. Разобрался!! )
Ответить с цитированием
  #7 (permalink)  
Старый 06.12.2013, 22:41
Новичок на форуме
Отправить личное сообщение для Horlamov Посмотреть профиль Найти все сообщения от Horlamov
 
Регистрация: 06.12.2013
Сообщений: 1

Подскажите как сделать, чтобы боковая панель при загрузке страницы не выезжала сама по себе, а чтобы выезжала при нажатии мышей, мозг скоро взорвётся!

$(function(){
$('.slider').click(function (){
$('#nav').slideToggle(1000);
var img = $(this).find('img');
if ($(img).attr('id') == 'bot'){
$(img).attr('src', 'images/arrow_top.png');
$(img).attr('id', 'top');
} else{
$(img).attr('src', 'images/arrow_bottom.png');
$(img).attr('id', 'bot');
}
});
$('.sub').click(function (){
var cur = $(this).prev();
$('#nav li ul').each(function(){
if ($(this)[0] != $(cur)[0])
$(this).slideUp(300);
});
$(cur).slideToggle(300);
});
});
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен WYSIWYG-редактор sdff Элементы интерфейса 4 27.10.2008 10:55
Нужен web-программист korn33v Работа 42 25.09.2008 17:26
Нужен горизонтальный скроллбар Spree Internet Explorer 0 26.08.2008 11:23
Нужен Старший разработчик JavaScript Yandex Работа 17 19.08.2008 15:43
Нужен HTML- верстальщик Yandex Работа 1 14.08.2008 16:47