2015-06-23 143 views
2

當元素已選中時,是否可以更改其他元素css。例如下面的代碼有div.allgametap_wrapper,裏面有div.allgame_tabitem,div.cleardiv.tabtitle。我的意思是我用js在div.allgame_tabitem裏面切換類selected,當div.allgame_tabitem有類selecteddiv.tabtitle裏面它自己div.allgametap_wrapper會改成css #fff (white)當所選元素具有新類時如何更改其他元素css

<div class="allgametap_wrapper"> 
    <div class="allgame_tabitem onlinegametab"></div> 
    <div class="clear"></div> 
    <div class="tabtitle" style="color:#666;"></div> 
</div> 
<div class="allgametap_wrapper"> 
    <div class="allgame_tabitem allgametab selected"></div> 
    <div class="clear"></div> 
    <div class="tabtitle" style="color:#666;"></div> 
</div> 

JS開關選擇代碼

$(".allgame_tab_container div div.allgame_tabitem").on('click', function (e) { 
     e.preventDefault(); 
     var $this = $(this); 
     $(".allgame_tab_container div div.allgame_tabitem").removeClass('selected'); 
     $this.addClass('selected'); 
    }); 

回答

1

這將是很好如果你可以提供你的js代碼。下面是例證:

// $(this) would refer to current selected element 
// this depend on your existed js code 
if ($(this).hasClass('selected')) { 
    $('.tabtitle').css('color','#666'); //<-- add this 
    $(this).siblings('.tabtitle').css('color','#fff'); 
} 
+0

速記代碼。在這個工作〜但大家我點擊是白色的,如果是如何當元素不是'selected'返回顏色'#666 '回來? –

+0

嗨我添加了我的js代碼... –

0

你可能是指:

window.document.getElementByClassName("allgametap_wrapper").style.color = white; 

有點棘手明白你的意思。

1

這裏爲

$("div.allgame_tabitem").on('click', function(e) { 
    e.preventDefault(); 
    if ($(this).hasClass('selected')) { 

     $(this).siblings('.tabtitle').css('color', '#fff'); 
    } else { 

     $(this).addClass('selected'); 
     $(this).siblings('.tabtitle').css('color', '#fff'); 
     $(this).parent().siblings().find('.selected').removeClass('selected'); 
    } 

}); 
相關問題