Firefox中没有propertychange事件

时间:2010-06-07 10:24:42

标签: jquery

在jQuery中,$.bind("propertychange", callback)在Firefox中不可用,我该如何解决?

感谢

最终,我用它来实现:

if ($.browser.msie) {
        $this.unbind("propertychange").bind("propertychange", function(e) {
            e.preventDefault();
            bindTrigger();
        });
    }
    else {
        document.getElementById(_acBoxCtrlID).addEventListener("input", bindTrigger, false);
    }

3 个答案:

答案 0 :(得分:10)

onpropertychange是Microsoft针对Internet Explorer实施的专有事件。其他浏览器不支持它。

最接近的对等值为DOMAttrModified,但这似乎仅在修改属性时触发(例如,通过.setAttribute("value", "string")),而不是属性(例如.value = "string")。

onchange可用于输入元素,但仅在该元素失去焦点时才会触发。除此之外,您的另一种选择是使用耗费资源的计时器来不断检查更改。

答案 1 :(得分:6)

您必须使用$(#inputEvent).bind("input", function(){ // your code });

答案 2 :(得分:1)

你能不能只使用.change()?
http://api.jquery.com/change/

你到底想要做什么?