Javascript jquery检测dom外部jquery中的更改

Javascript jquery检测dom外部jquery中的更改,javascript,jquery,dom,Javascript,Jquery,Dom,是否可以使用jQuery(或任何其他JavaScript函数)检测何时触发onmouseover事件 我有一个页面,其中现有javaScript调用onmouseover/out事件来重新写入div的内容。实际上,我只对鼠标悬停在div上时获取div包含的内容感兴趣。onmouseover事件是由我无法更改的程序在服务器端生成的:( 关于如何实现这一点有什么建议吗?您可以在jQuery中使用mouseover事件处理程序 $("#idOfYourControl").hover(function(

是否可以使用jQuery(或任何其他JavaScript函数)检测何时触发onmouseover事件

我有一个页面,其中现有javaScript调用onmouseover/out事件来重新写入div的内容。实际上,我只对鼠标悬停在div上时获取div包含的内容感兴趣。onmouseover事件是由我无法更改的程序在服务器端生成的:(


关于如何实现这一点有什么建议吗?

您可以在jQuery中使用mouseover事件处理程序

$("#idOfYourControl").hover(function() { /*mouseover event*/ }, function() { /*mouseout event*/ });

您可以在jQuery中使用mouseover事件处理程序


这里有一个更具体的例子:

$("#idOfYourControl").hover(
   function() { $('#divToShowText').text($(this).text()) }, 
   function() { $('#divToShowText').text("") }
);

这里有一个更具体的例子:

$("#idOfYourControl").hover(
   function() { $('#divToShowText').text($(this).text()) }, 
   function() { $('#divToShowText').text("") }
);

根据服务器写入原始mouseover处理程序的方式,您可以使用简单的覆盖来添加自己的钩子,然后使用该钩子来检测触发的旧钩子:

var oldHandler = yourElement.onmouseover;
yourElement.onmouseover = function() {
    //Do whatever new code you want here...
    $j.trigger('oldHandlerCalled');

    oldhandler();
}
这是一个快速而肮脏的例子,但你明白了。不能保证这不会泄漏IE6中的内存;)


如果服务器通过jQuery附加事件,您可以查看yourElement.data.events,并以比此更整洁的方式进行操作。

根据服务器写入原始鼠标悬停处理程序的方式,您可以使用简单的覆盖来添加自己的钩子,然后使用该钩子来检测触发的旧钩子:

var oldHandler = yourElement.onmouseover;
yourElement.onmouseover = function() {
    //Do whatever new code you want here...
    $j.trigger('oldHandlerCalled');

    oldhandler();
}
这是一个快速而肮脏的例子,但你明白了。不保证这不会泄漏IE6中的内存;)

如果服务器通过jQuery附加事件,那么可以查看yourElement.data.events并以比这更整洁的方式执行