Jquery 使onpropertychange和domattrmodified可以检测元素何时更改

Jquery 使onpropertychange和domattrmodified可以检测元素何时更改,jquery,dom,javascript-events,event-handling,Jquery,Dom,Javascript Events,Event Handling,应该会触发什么,不是吗? 我在IE8中没有得到支持,在FX3.6.10中也没有发生任何事情 <html> <head> <script src="http://code.jquery.com/jquery-1.4.2.js"></script> <script> // modified from http://pragmatec.blogspot.com/2009/06/google-toolbar-style-and-toolti

应该会触发什么,不是吗? 我在IE8中没有得到支持,在FX3.6.10中也没有发生任何事情

<html>
<head>
<script src="http://code.jquery.com/jquery-1.4.2.js"></script>
<script>


// modified from http://pragmatec.blogspot.com/2009/06/google-toolbar-style-and-tooltip.html
jQuery(function($){
  $.fn.dommodhandler = function(options){
    function setListeners(){
      if (typeof (this.onpropertychange) == "object"){
        $('#innerDiv').bind('propertychange',function(e){
          $('#msgDiv').html(this.id+' changed</br/>');
        });
      }
      else if ($.browser.mozilla){
      $('#msgDiv').html("bind");
        $('#innerDiv').bind('DOMAttrModified',function(e){
          $('#msgDiv').html(this.id+' changed</br/>');
        });
      }
      else {
        $('#msgDiv').html('not supported in this browser');
        return false;
      }
    }
    return setListeners();
    }
  }
);
$(document).ready(function(){
  $.fn.dommodhandler ();
});

</script>
</head>
<body>
<div id="wrapper">
<a href="#" onClick="document.getElementById('innerDiv').height='300px';document.getElementById('innerDiv').innerHTML=new Date(); return false">Click</a>
  <div id="outerDiv">
    <div id="innerDiv">Hello</div>
  </div>
  <div id="msgDiv"></div>      
</div>  

</body>
</html>

//修改自http://pragmatec.blogspot.com/2009/06/google-toolbar-style-and-tooltip.html
jQuery(函数($){
$.fn.dommodhandler=函数(选项){
函数setListeners(){
if(typeof(this.onpropertychange)=“对象”){
$('#innerDiv').bind('propertychange',function(e){
$('#msgDiv').html(此.id+'已更改
'); }); } else if($.browser.mozilla){ $('#msgDiv').html(“绑定”); $('#innerDiv').bind('DOMAttrModified',函数(e){ $('#msgDiv').html(此.id+'已更改
'); }); } 否则{ $('#msgDiv').html('此浏览器不支持'); 返回false; } } 返回setListeners(); } } ); $(文档).ready(函数(){ $.fn.dommodhandler(); }); 你好


更新:还是不开心。。。任何人都有任何建议来检测什么时候(ajax)由于较大或较小的内容而改变了div的实际高度

如果您确实改变了属性,则会触发事件(FF 3.6.10):

有趣-当我更改高度时没有触发-因此您是否有建议,当内容更改div的大小时如何触发脚本,因为onresize在非IE浏览器中没有触发这很棘手。听一下窗口的调整大小事件就足够了吗$绑定('resize',函数(事件){…})?如果没有,您可能必须处理在更改div大小时触发的自定义事件。这就是我在上面所做的。它是在div的大小改变时触发的,而不是在我改变div的大小时触发的。这只是一个演示,它将if(typeof(this.onpropertychange)==“object”)更改为
if(此处为onpropertychange)
。如果元素有一个现有的
onpropertychange
处理程序,
typeof
可以返回
“function”