2015-03-03 51 views
0
<div class="tovar_color_select"> 
        <p>Select color</p> 
        <?php $hn = new product(); 
         $get_color = $hn->get_color_id_nullval($gg['id_product']); 
         while($fetch_color = mysql_fetch_array($get_color)){ 
         ?> 
        <a class="color" title="<?=$fetch_color[1]?>" 
onClick="chkcolor(this , <?=$gg['id_product']?> , <?=$fetch_color[0]?>)" 


style="background-color:<?=$fetch_color[2]?>" ></a> 
        <?php } ?> 
       </div> 
    function chkcolor(obj,p_id,clr_id){ 

      if($(obj).hasClass("active")) 
      { 
       $(obj).removeClass("active"); 
       $('.tovar_color_select a').removeClass("active"); 
      } 


      else { 

       $(obj).addClass('active'); 
      } 

      } 

仔細聽我的查詢。我今年已經成功地讓活動類,也有刪除活動類當前的對象,但我需要保持活躍其他選擇DOM元素,這是由用戶選擇。目前我的代碼從所有DOM元素活動類中刪除。我只想保持選擇類活動其他DOM元素應該從活動類中刪除。如果我有任何你可以提到的語法錯誤,但你也給我一些邏輯實現我的查詢。在此先感謝幫助查找對象的jQuery刪除類當前的對象,但不刪除其他活動對象

+0

需要查看更多代碼才能知道用戶正在選擇什麼。我們看不到你如何調用這個函數。也不知道爲什麼這麼多參數在功能上,唯一使用的似乎是'obj' – charlietfl 2015-03-03 01:31:57

+0

現在你可以查看我的整個代碼。 @charlietfl – 2015-03-03 01:35:01

+1

我不太清楚你現在在做什麼,但我認爲你想要做的是:'$('。tovar_color_select a')。removeClass(「active」); $(obj).addClass('active');'刪除活動類的所有實例並將其應用於當前單擊的對象。 – mkaatman 2015-03-03 01:38:41

回答

1

下面是一個簡化的例子:http://jsfiddle.net/a78xdey7/

HTML:

<ul class="listOfStuff"> 
    <li class="active">test</li> 
    <li >test</li> 
    <li >test</li> 
    <li >test</li> 
</ul> 

CSS:

.active{ 
    color:red; 
} 

的Javascript:

$('li', $('.listOfStuff')).on('click', function(){ 
     $('.active').removeClass('active'); 
     $(this).addClass('active'); 
}); 
0
function chkcolor(obj,p_id,clr_id){ 

     if($('.tovar_color_select a').hasClass('active')) 
     { 

      $('.tovar_color_select a').removeClass("active"); 
      $(obj).addClass('active'); 
     } 


     else { 

      $(obj).addClass('active'); 
     } 

     } 

現在我只是改變了一個條件我檢查所有的對象或DOM元素有活動類,然後我只是刪除他們的活動類,並添加到我當前點擊DOM元素或對象的活動類。