有没有哪位大侠, 可以追踪到textarea(id='txtContent')上的每一个事件?
这里的事件, 
1.可能是写在元素上的如 onkeyup='xxx', 
2.可能是jquery绑定的如 $("#txtContent").keydown(function(){ xxx });
3.可能是父级元素指定的事件, 传到了它上面。 如: $(document).keyup(function(){ xx });
...总之, 可以影响到它的, 操作它可能发生的事件都算。 平时, 我们写的js比较简单, 很容易直接找到触发的function, 但写的js多了,再者引用的组件多了, 很难知道在哪一个地方给它加了事件, 出错不容易跟踪。思路:
1. 有没有什么浏览器, 可以直接定位到textarea, 然后那个元素产生事件时自然地进行跟踪调试?
2. 如果1没有, 那有没有什么办法可以遍历出此元素textarea可能触发的所有事件的function(没有定义的不算, 比如有onmouseover事件, 但没有定义onmouseover对应的function就不算)呢?

解决方案 »

  1.   

    当然, 不要告诉我用什么firebug, 也不要叫我直接找代码, 我已经找了一整天了……
      

  2.   

    没有但是办法还是有先是谷歌浏览器 对于在控制台 设置 这个标签的 break on... 那么在属性变化的情况下可以断点js在就比较麻烦了 我会吧 textarea的 id改掉 然后查看所有报错的地方 一个一个的改
      

  3.   

    我觉得你监听元素的事件是没问题的,但你要求的是跟踪因这个事件产生的相应函数就难了,几乎是不可能吧。
    在一个元素上用addEventListener()完全可以知道它什么时候响应了什么事件,比如点击事件,但是由此引发的所有函数应该是无法获取的,因为可能是一大堆的队列事件。
      

  4.   

        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title></title>
        <script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js'></script>
        <script type="text/javascript">
        function fns() {
        
        }
    var arr = ['onabort', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onerror', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onresize', 'onselect', 'onsubmit', 'onunload'];
        function bianli() {
         var obj = document.getElementById('divId');
         for(var i in obj) {
         for(var j=0; j<arr.length; j++) {
         if('on' + i == arr[j]) {
         if(obj[i] != null) {
         alert(obj[i]);
         }
         }
         }
         }
        }
        window.onload = function() {
         bianli();
        }
        </script>
        <style type="text/css">

        </style>
        </head>
        <body>
        <div id='divId' onclick='fns()'></div>
        </body>
        </html>
      

  5.   

    extjs提供的events有
    activate
    added
    afterrender
    autosize
    beforeactivate
    beforedeactivate
    beforedestroy
    beforehide
    beforerender
    beforeshow
    beforestaterestore
    beforestatesave
    blur
    boxready
    change
    deactivate
    destroy
    dirtychange
    disable
    enable
    errorchange
    focus
    hide
    keydown
    keypress
    keyup
    move
    removed
    render
    resize
    show
    specialkey
    staterestore
    statesave
    validitychange
    writeablechange 你写个Controller,响应需要处理的几个events。
    需要我简单讲一下extjs的MVC不?
      

  6.   

    这是哪跟哪呀? 你就知道我一定用了 extjs, 一定用了MVC?