Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.01.2013, 18:15
Кандидат Javascript-наук
Отправить личное сообщение для fAmOus Посмотреть профиль Найти все сообщения от fAmOus
 
Регистрация: 10.07.2012
Сообщений: 105

Помогите исправить скрипт кнопки
Всем привет.. я тут навоял своего, но не продумал детали, думал все будет работать.. но нет.
Собственно вот скрипт:
$(".create_acc_but").bind("mouseover", function (){
            $(".left_acc_but").addClass("left_acc_but_link");
            $(".middle_acc_but").addClass("middle_acc_but_link");
            $(".right_acc_but").addClass("right_acc_but_link");
        }).bind("mouseout", function (){
            $(".left_acc_but").removeClass("left_acc_but_link").removeClass("left_acc_but_down");
            $(".middle_acc_but").removeClass("middle_acc_but_link").removeClass("middle_acc_but_down");
            $(".right_acc_but").removeClass("right_acc_but_link").removeClass("right_acc_but_down");
        }).bind("mouseup", function (){
            $(".left_acc_but").removeClass("left_acc_but_down").addClass("left_acc_but_link");
            $(".middle_acc_but").removeClass("middle_acc_but_down").addClass("middle_acc_but_link");
            $(".right_acc_but").removeClass("right_acc_but_down").addClass("right_acc_but_link");
        }).bind("mousedown", function (){
            $(".left_acc_but").addClass("left_acc_but_down").removeClass("left_acc_but_link");
            $(".middle_acc_but").addClass("middle_acc_but_down").removeClass("middle_acc_but_link");
            $(".right_acc_but").addClass("right_acc_but_down").removeClass("right_acc_but_link");
        });

Мне нужно чтобы он работал со всеми блоками с классом .create_acc_but
А то данный скрипт работает только с первым найденным блоком с этим классом, другие просто не работают
Ответить с цитированием
  #2 (permalink)  
Старый 04.01.2013, 18:18
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

$(".create_acc_but").live("mouseover", function (){
            $(".left_acc_but").addClass("left_acc_but_link");
            $(".middle_acc_but").addClass("middle_acc_but_link");
            $(".right_acc_but").addClass("right_acc_but_link");
        }).live("mouseout", function (){
            $(".left_acc_but").removeClass("left_acc_but_link").removeClass("left_acc_but_down");
            $(".middle_acc_but").removeClass("middle_acc_but_link").removeClass("middle_acc_but_down");
            $(".right_acc_but").removeClass("right_acc_but_link").removeClass("right_acc_but_down");
        }).live("mouseup", function (){
            $(".left_acc_but").removeClass("left_acc_but_down").addClass("left_acc_but_link");
            $(".middle_acc_but").removeClass("middle_acc_but_down").addClass("middle_acc_but_link");
            $(".right_acc_but").removeClass("right_acc_but_down").addClass("right_acc_but_link");
        }).live("mousedown", function (){
            $(".left_acc_but").addClass("left_acc_but_down").removeClass("left_acc_but_link");
            $(".middle_acc_but").addClass("middle_acc_but_down").removeClass("middle_acc_but_link");
            $(".right_acc_but").addClass("right_acc_but_down").removeClass("right_acc_but_link");
        });

Сообщение от fAmOus
А то данный скрипт работает только с первым найденным блоком с этим классом, другие просто не работают
Суть в том что при смене класса - объект изменяется и привязка bind уже не работает - используйте live или on

Последний раз редактировалось Deff, 04.01.2013 в 18:20.
Ответить с цитированием
  #3 (permalink)  
Старый 04.01.2013, 21:39
Кандидат Javascript-наук
Отправить личное сообщение для fAmOus Посмотреть профиль Найти все сообщения от fAmOus
 
Регистрация: 10.07.2012
Сообщений: 105

Deff,
Спасибо )
Вот у меня вышел отлично работающий скриптик, но хотелось бы его как-то уменьшить.. это возможно?
$(".create_acc_but").live("mouseover", function (){
            $(this).find(".left_acc_but").addClass("left_acc_but_link");
            $(this).find(".middle_acc_but").addClass("middle_acc_but_link");
            $(this).find(".right_acc_but").addClass("right_acc_but_link");
        }).live("mouseout", function (){
            $(this).find(".left_acc_but").removeClass("left_acc_but_link").removeClass("left_acc_but_down");
            $(this).find(".middle_acc_but").removeClass("middle_acc_but_link").removeClass("middle_acc_but_down");
            $(this).find(".right_acc_but").removeClass("right_acc_but_link").removeClass("right_acc_but_down");
        }).live("mouseup", function (){
            $(this).find(".left_acc_but").removeClass("left_acc_but_down").addClass("left_acc_but_link");
            $(this).find(".middle_acc_but").removeClass("middle_acc_but_down").addClass("middle_acc_but_link");
            $(this).find(".right_acc_but").removeClass("right_acc_but_down").addClass("right_acc_but_link");
        }).live("mousedown", function (){
            $(this).find(".left_acc_but").addClass("left_acc_but_down").removeClass("left_acc_but_link");
            $(this).find(".middle_acc_but").addClass("middle_acc_but_down").removeClass("middle_acc_but_link");
            $(this).find(".right_acc_but").addClass("right_acc_but_down").removeClass("right_acc_but_link");
        });
Ответить с цитированием
  #4 (permalink)  
Старый 04.01.2013, 22:33
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

function Toggl(a){
            a.find(".left_acc_but,.middle_acc_but,.right_acc_but").toggleClass("left_acc_but_down").toggleClass("left_acc_but_link");
 }

        $(".create_acc_but").live("mouseover", function (){
            Toggl($(this));
        }).live("mouseout", function (){
            Toggl($(this));
        }).live("mouseup", function (){
            Toggl($(this));
        }).live("mousedown", function (){
            Toggl($(this));
        });
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Автоскроллинг, помогите исправить скрипт Alamogoro Общие вопросы Javascript 3 09.10.2012 15:49
Помогите исправить скрипт fAmOus Элементы интерфейса 4 31.08.2012 01:02
Помогите Исправить элементарный скрипт! с location.searсh pp-vp Events/DOM/Window 5 12.08.2010 14:40
Помогите исправить скрипт по поиску в базе данных dok_sj2 Internet Explorer 2 29.06.2009 20:04
Помогите создать скрипт замены картинок при наведении курсора. SantaS Я не знаю javascript 3 05.06.2009 12:59