【问题标题】:Disable/Enable all click,mouse over events in div禁用/启用所有单击,将鼠标悬停在 div 中的事件上
【发布时间】:2014-08-11 18:59:13
【问题描述】:

这是我的代码,在这些所有 href 标记中,其类名都具有单击事件,并且 img 也具有鼠标悬停工具提示事件。我想在单击一个称为编辑的按钮时禁用所有这些事件。

<div style="float:right" class="user_athen_container">
   <a href="#" id="addop" style="margin:10px 3px;overflow:auto;float:right;" title="Add Opportunity" rel="tooltip"><img src="images/add_op.png"></a>
   <a href="#" id="addcus" class="show_add_cust" style="margin:10px 3px;overflow:auto;float:right;" title="Add Customer" rel="tooltip"><img src="images/add_cusomer.png"></a>
   <a href="#" id="addso" style="margin:10px 3px;overflow:auto;float:right;" title="Add SO" rel="tooltip"><img src="images/add_so.png"></a>
   <img src="images/view_submission_icon.png" class="view_file" title="View Log Submission Policy" rel="tooltip" style="margin: 10px 3px; overflow: auto; float: right;">
</div>

正在尝试的是:

$(document).on('click', '#btn_edit', function(e) {
       $('.user_athen_container').prop('disabled', true);
});

我想在取消按钮中启用所有事件:

$("#canceledit").click(function() {
     $('.user_athen_container').prop('disabled', false);
});

这是我的code

【问题讨论】:

  • 尝试将禁用的属性应用于 a 元素,$('user_athen_container a').attr('disabled', true / false)...

标签: javascript jquery html css


【解决方案1】:

您可以将事件处理程序委托给一个共同的父级并按如下方式绑定/取消绑定它:

$(document).ready(function(){

  $("#btn_edit").click(function () {
    $('.user_athen_container').off();
  });

  $("#canceledit").click(function () {
    bindEvents()
  });

  bindEvents()
});

function bindEvents(){
  $('.user_athen_container').on("mouseout",".view_file",function () {
    $(".view_file").css("background-color", "lightgray");
  });
  $('.user_athen_container').on("click","#addso",function () {
   alert("ADDSO PROCESS");
  });
  $('.user_athen_container').on("click","#addop",function () {
  alert("ADDOP PROCESS");
  });
}

Demo

【讨论】:

  • +1 表示off() 事件处理程序。另一种方法是使用event.preventDefault() 在点击上设置bind(),然后使用unbind() 再次启用点击
  • 对。它的作品,但我有共同的 js 文件来做这些类型的点击,鼠标事件。并在其他jsp文件中进行编辑,取消。编辑按钮也是动态创建的。所以只能在里面使用off功能。
猜你喜欢
  • 1970-01-01
  • 2020-11-16
  • 2011-03-23
  • 1970-01-01
  • 2012-08-03
  • 1970-01-01
  • 1970-01-01
  • 2016-08-17
  • 2015-09-28
相关资源
最近更新 更多