如果元素拥有某个类,jQuery将执行某个操作。

3
我正在尝试根据匹配列表项是否具有活动类来切换选项卡的显示。我尝试了多种不同的方法,包括if语句和.hasClass,但无法按照我的意愿进行操作!任何帮助都将不胜感激。
这是我其中一次尝试的示例:
$( "#indexHero" ).onClick(function(){
  $("#tabNo1.active"){
    $( "#testID1, #testID2" ).addClass( "hideMe" );
    $( "#testID3" ).removeClass( "hideMe" );
  }
});

1
$( "#indexHero" ).onClick(...”是什么?这不是jQuery... jQuery应该是.click(....on("click", ...(或者在过去的日子里,.bind("click", ...)。 - T.J. Crowder
1
你可以使用.hasClass()来实现这个目的,它会返回一个布尔值。顺便说一下,我建议用.on('click', function(){});替换.onClick(function(){}); - kosmos
3个回答

5

检查 length 属性,否则使用 jquery 中的 .hasClass()

$( "#indexHero" ).click(function(){
 if($("#tabNo1.active").length > 0){
   $( "#testID1, #testID2" ).addClass( "hideMe" );
   $( "#testID3" ).removeClass( "hideMe" );
 }
});

或者

if($("#tabNo1").hasClass("active")){

}

3

使用hasClass()

   $( "#indexHero" ).click(function(){
      if ($('#tabNo1').hasClass('active')) {
        $( "#testID1, #testID2" ).addClass( "hideMe" );
        //} else {
        $( "#testID3" ).removeClass( "hideMe" );
       }
      }):

1

试试这个:

$( "#indexHero" ).click(function(){
   if($("#tabNo1").hasClass("active"))
   {
      $( "#testID1, #testID2" ).addClass( "hideMe" );
      $( "#testID3" ).removeClass( "hideMe" );
   }
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接