【问题标题】:Is there away to monitor when a elements disabled attribute is set with jquery?是否可以监视何时使用 jquery 设置元素禁用属性?
【发布时间】:2009-08-13 16:47:48
【问题描述】:

我正在尝试触发我为按钮设置为禁用状态时创建的新事件(通过另一种方法等...)我该如何实现?我想在禁用状态发生变化时监听它。

【问题讨论】:

    标签: jquery html input


    【解决方案1】:

    为什么不直接从禁用按钮的方法中调用该方法?

    function disableButton(){
         $('#the-button').attr('disabled', 'disabled');
         whatToDoWhenDisabled();
    }
    
    function whatToDoWhenDisabled(){
         Do whatever it is you do;
    }
    

    【讨论】:

      【解决方案2】:

      如果您不一定可以控制按钮的禁用,则可以查看两个事件:

      onpropertychange (IE)

      DOMAttrModified (w3c)

      【讨论】:

      • 话虽如此 - Webkit 浏览器仍然不支持 DOMAttrModified,但它在 IE9、Opera 和 Firefox 中确实有效。
      【解决方案3】:

      没有。属性值发生变化时不会引发任何事件。

      【讨论】:

        【解决方案4】:

        我不想将代码放在被调用的方法中,因为我想成为一个站点范围的解决方案......

        我在想一个不会结束的while循环并这样做

        if($('#yourButton').is(':disabled')) {
            $('#someElement').trigger('yourEvent');
        }
        

        但问题是我不希望 JS 减慢这个页面的速度,这会是一个问题吗...

        【讨论】:

          猜你喜欢
          • 2017-03-23
          • 1970-01-01
          • 1970-01-01
          • 2011-06-29
          • 1970-01-01
          • 2020-05-23
          • 2014-01-21
          • 2012-07-25
          • 2015-01-29
          相关资源
          最近更新 更多