簡體   English   中英

jQuery檢測DOM外場jQuery的變化

[英]jquery detect change in dom outsite jquery

是否可以使用jQuery(或任何其他JavaScript函數)檢測何時觸發onmouseover事件?

我有一個頁面,其中現有的javaScript調用onmouseover / out事件來重寫div的內容。 我實際上只是對鼠標懸停在div上時所包含的內容感興趣。 onmouseover事件是由服務器端在服務器端生成的,我無法更改:(。

關於如何做到這一點的任何建議?

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

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

http://docs.jquery.com/Events/mouseover#fn

這是一個更具體的示例:

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

根據服務器如何寫出原始的鼠標懸停處理程序,您可以使用簡單的覆蓋來添加自己的鈎子,然后使用該鈎子來檢測被觸發的舊鈎子:

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

    oldhandler();
}

這是一個快速而骯臟的例子,但是您明白了。 不保證這不會泄漏IE6中的內存;)

如果服務器通過jQuery附加事件,則可以查看yourElement.data.events並以比這更為整潔的方式進行處理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM