2013-11-28 4 views
-2

Я пытаюсь вставить this в свою функцию, чтобы иметь несколько шкал.Проблема с этим классом jquery

$('.bt').click(function(e){ 
    var num = $(this).attr('href'); 
    $('.rat').hide(); 
    $('.' + num).show(); 
    e.preventDefault(); 
}); 

JSFIDDLE

+0

вот демо: http://jsfiddle.net/kyPS7/ – novoa

+0

Что это функция, которую вы хотите вызвать с помощью 'this'? –

+0

но его работа на моем конце –

ответ

2

Чтобы изменить только один масштаб можно использовать parent() и children() функции вместо выбора элементов «глобально». Вот то, что вам нужно (JSFiddle):

$('.bt').click(function(e){ 
    var num = $(this).attr('href'); 
    $(this).parent().children('.rat').hide(); 
    $(this).parent().children('.' + num).show(); 
    e.preventDefault(); 
}); 
+0

, вот и все мои друзья! Большое спасибо !!! – novoa

+0

+1 для понимания вопроса .. я вообще не мог понять – Dhaval

0

В настоящее время, вы выбираете все элементы с классом .rat. Вы хотите выбрать только братьев и сестер текущего элемента. Посмотрите jQuery's siblings и попробовать что-то вроде этого:

$('.bt').click(function(e){ 
    var num = $(this).attr('href'); 
    $(this).siblings('.rat').hide(); 
    $(this).siblings('.' + num).show(); 
    e.preventDefault(); 
}); 
Смежные вопросы