2010-07-06 142 views
1

在這段代碼中有點擊事件的按鈕和錨點。點擊事件的問題?

alert(document.getElementById("btn").click); //not working in safari 
alert(document.getElementById("btn1").click); // is working in safari 

我想執行錨的點擊事件我該怎麼做?

<head> 
<script type="text/javascript"> 
function clickMe() 
{ 
    alert('My Name is ' + event.srcElement.name); 
} 
</script> 
</head> 
<body> 
<a href="#" name="btn" id="btn" onclick="clickMe()">a</a> 
<input type="button" href="#" name="btn1" id="btn1" onclick="clickMe()" /> 
<script> 

//document.getElementById("btn").click(); 
alert(document.getElementById("btn").click); 
alert(document.getElementById("btn1").click); 
</script> 
</body> 

回答

0

從另一個問題Can I call jquery click() to follow an <a> link if I haven't bound an event handler to it with bind or click already?

我做了一些研究,它似乎是。點擊是不是想用「A」的標籤工作,因爲與瀏覽器不能支持「假點擊」兩者JavaScript的。我的意思是,你不能用javascript「點擊」一個元素。使用'a'標籤可以觸發其onClick事件,但鏈接不會更改顏色(對於訪問過的鏈接顏色,在大多數瀏覽器中默認爲紫色)。因此,使$()。click事件與'a'標籤一起工作是沒有意義的,因爲進入href屬性的行爲不是onClick事件的一部分,而是在瀏覽器中進行硬編碼。

由於這種行爲,Safari和Chrome不允許鏈接對象具有.click功能。看起來IE不那麼嚴格。