2012-01-27 4 views
1

Im пытается построить контента окно с закладками, и им интересно, если его возможно, что я могу отключить 1 ссылку с определенным классом, такие как «инвалиды» ​​Отключить щелчок, если класс = «X», JQuery

Я прочитал где-нибудь о функции, называемой preventDefault, будет ли это работать?

http://jsfiddle.net/Ssr5W/

ответ

6

Вы можете отключить событие щелчка, возвращая ложь. как,

$('#tabmenu a').click(function() { 
    return !$(this).hasClass('disabled'); 
}); 

Кроме того, я обновил вашу скрипка: http://jsfiddle.net/Ssr5W/1/


EDITED

и, конечно же, preventDefault будет работать :)

$('#tabmenu a').click(function(e) { 
    if($(this).hasClass('disabled')) 
     e.preventDefault(); 
}); 

скрипки : http://jsfiddle.net/Ssr5W/2/

0
$('.disabled').click(function(e) { 
    e.preventDefault() ; 
}) ; 
+1

Этот не является точным решением, если javascript динамически переключает «отключенный» класс. Он привяжет событие клика к тем вкладкам, которые в первую очередь имеют «отключенный» класс. – Sang

+0

Правда. Не считал это нужным. Но справедливая точка. –

0

Вы можете просто проверить класс на элемент, который щелкнули:

$('tabElement').click(function(){ 
    if(this.hasClass('disabled')) 
     return; 
    //Your code here.. 
); 

Это не будет мешать другим clikc обработчиков вы можете иметь на вкладке элемент

Смежные вопросы