首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

请问javascript高手,有关自定义事件,比较

2012-02-22 
请教javascript高手,有关自定义事件,比较急我现在需要这样一个功能,比如在页面中有这样一个元素HTML code

请教javascript高手,有关自定义事件,比较急
我现在需要这样一个功能,比如在页面中有这样一个元素

HTML code
<div id="panel"><div/>

我有一些操作inerHTML的操作
JScript code
document.getElementById("panel").innerHTML = "sdfsd";

我想在这个div元素上监听这个事件,每当有内容发生变化时都要触发。

在网上查了一些例子,onproperchange不触发,其他的自定义事件的方法都有局限性,比如说这个
JScript code
function Element(value, domEL){this.domEl = domEL;            this.domEl.getValue = function() { return value; };this.domEl.setValue = function(newValue){     var isChange = false || value!=newValue;     value = newValue;     if(isChange && this.onValueChange) this.onValueChange();  };this.domEl.buttonObj = this;    this.domEl.onValueChange=this.valueChangeHandler;}Element.prototype.valueChangeHandler=function(){var buttonObj = this.buttonObj;alert('value is changed to '+ buttonObj.domEl.getValue());}var b = new Element(1, document.getElementById("panel")); 


一定要调用其中的setvalue方法才能触发。
高手指教!

[解决办法]
纯支持,我在尝试自动提交ext的htmleditor的时候遇到类似的问题,还不会解决
[解决办法]
纯支持。。。

是我的话两种思路:

1.写一个方法,专门执行document.getElementById("panel").innerHTML = "sdfsd";并检查改变

2.setInterVal()...
[解决办法]
朋友, 你看看是不是写错了,丢了TY onpropertychange,
[解决办法]
自己写个innerHTML行吗?

JScript code
    var Element = function(obj){        this.element = obj;        return this;    }    Element.prototype.innerHTML = function(txt, callBack) {        var _arg = [];        var _len = arguments.length;        for(var i = 0; i < _len; i++) {            _arg[i] = arguments[i];        }        var _oldTxt = this.element.innerHTML;        this.element.innerHTML = _arg.shift();        _arg.shift();        callBack.apply(window, [_oldTxt, txt].concat(_arg));    }    var $Element = function(id) {        var _obj = (typeof(id) == 'string')? document.getElementById(id) : id;        return new Element(_obj);    }    function alertIt(oldTxt, newTxt, str) {        alert(str);    }    $Element('box').innerHTML('ddd', alertIt, '内容改变了!');
[解决办法]
目前DOM的标准没有暴露出这样一个接口,个人感觉,楼上的重载innerHTML的方式,要比setInterval好,最好还是修改下设计或者算法,这个需求还是有点怪。

热点排行