有没有可能启用此脚本?

时间:2014-02-13 11:24:44

标签: javascript jquery

如果li有“活动”类

,请禁用click事件

HTML:

<div class="tabs1">
<ul>
   <li id="menutab1"><a href="#tab1" title="TOS" data-toggle="tab"><span>Terms of Services</span></a></li>
   <li id="menutab2"><a href="#tab2" title="Welcome" data-toggle="tab"><span>Welcome</span></a></li>
   <li id="menutab3"><a href="#tab3" title="Applicant" data-toggle="tab"><span>Applicant</span></a></li>
   <li id="menutab4"><a href="#tab4" title="Personal Data" data-toggle="tab"><span>Personal Data</span></a></li>
   <li id="menutab5"><a href="#tab5" title="Contact Info" data-toggle="tab"><span>Contact Info</span></a></li>
   <li id="menutab6"><a href="#tab6" title="Exam Date" data-toggle="tab"><span>Exam Date</span></a></li>
   <li id="menutab7"><a href="#tab7" title="Submit" data-toggle="tab"><span>Submit</span></a></li>
</ul>
</div>

JAVASCRIPT:

   <script type="text/javascript>
         $("menutab").click(false);
    </script>

2 个答案:

答案 0 :(得分:2)

使用return false:

$(selector).on('click',function(){
    if($(this).hasClass('active')){
      return false;
    }
    // other stuffs 
});

答案 1 :(得分:1)

您可以为“.active”类应用一些CSS样式,如果click事件的目标具有等于“active”的className,则可以简单地跳过正在发生的任何任务。 p>

看看他的例子

var prevItem;

var itemClicked = function(event){
    var target = event.target,
        className = target.className;

    if(className === 'active'){
       return;
    }

    if(prevItem) { prevItem.className = ''; }
    target.className = 'active';
    prevItem = target;

   // perform the rest tasks
}

$('#tabs1').on('click', itemClicked);

http://jsfiddle.net/uvrSg/9/