2011-03-24 27 views
1

下面的代碼可以在Firefox中正常工作,但不能在IE8中正常工作。如何觸發IE8中HTML元素的事件?

它觸發HTML元素(此處指定爲「節點」)上的鼠標點擊事件,並且 調用已經綁定到該元素的函數。 因此,它像編程方式觸發給定元素上的點擊事件。
var oEvent = document.createEvent(\"MouseEvents\"); oEvent.initMouseEvent(\"click\", true, true, window, 1, 1, 1, 1, 1, false, false, false, false, 0, node); node.dispatchEvent(oEvent);
任何人都可以幫助我使它在IE8中工作嗎?

在此先感謝。

回答

2

您只需要像Firefox那樣的代碼,但尚未有點擊事件的元素!

只需點擊該元素在其他瀏覽器 - 例如node.click()

這意味着你需要嗅出事件。我會嘗試

if (node.click) node.click(); 
else if (document.createEvent) { 
    var oEvent = document.createEvent("MouseEvents"); 
    if (oEvent.initMouseEvent) { // just to be sure... 
    oEvent.initMouseEvent("click", true, true, window, 1, 1, 1, 1, 1, false, false, false, false, 0, node); 
    node.dispatchEvent(oEvent); 
    } 
} 
+0

我有同樣的問題。你能幫我解決嗎?當我嘗試這個代碼。它的給定節點是未定義的錯誤。 – 2013-12-05 11:03:51

+0

提出問題,提出問題 – mplungjan 2013-12-05 12:31:16

+0

我已經問過問題了.. http://stackoverflow.com/questions/20394182/checked-is-not-working-in-ie8-browser謝謝 – 2013-12-05 12:38:17

相關問題