2013-08-23 66 views
2

IE6,7,8此代碼不起作用如何使用fireevent IE8?

有人幫助我。

我該如何解決?

<script type="text/javascript"> 
function call (event) { 
    if (document.createEventObject) { // IE before version 9 
    var mouseclickEvent = document.createEventObject (window.event); 
    mouseclickEvent.button = 1; // left button is down 
    document.getElementById("test4").fireEvent ("onclick", mousedownEvent); 
    } 
} 
</script> 
<body> 
    <button id="test" onmouseover="call (event);">call</button> 
    <input id="test3" type="file" onclick="alert(6)"/> 
</body> 

回答

3

有是在你的代碼的幾個問題:

  1. eventwindow.event是多餘的(而且,我不知道,雖然,可能會導致錯誤);
  2. 有沒有編號爲test4的元素。

下面的代碼已在IE8和IE6測試:

<script> 
function call() 
{ 
    if(document.createEventObject) 
    { 
     var evt=document.createEventObject(); 
     evt.button=1; 
     document.getElementById("test").fireEvent("onclick",evt); 
    } 
} 
</script> 
<button type="button" onclick="call();">Fire</button> 
<input type="text" id="test" onclick="alert(6);" />