2010-07-13 53 views
1

我在我的(iOS 4)iPod touch上遇到了移動Safari中的一個奇怪問題。 最小的身體HTML演示此問題是:在iOS中的URL片段和onclick的奇怪行爲Safari

<p> 
    <a href="" onclick="event.preventDefault()">Click</a> 
</p> 
<p id="anchor"> 
    Anchor 
</p> 

當網頁加載時在URL中有#片段,點擊鏈接執行的onclick JavaScript中,這抑制了鏈接的作用,以及(如預計)沒有任何反應。

但是,如果頁面在上面的例子中加載了一個有效的URL片段#anchor,那麼點擊鏈接會導致頁面跳轉到ID爲'anchor'的段落(就像頁面最初加載時一樣)。

我找不到方法;任何建議將不勝感激。

+0

我應該補充說,如果'onclick'中使用'return false',並且不管'href'中的URL如何,都會觀察到相同的行爲。 – 2010-07-13 17:28:29

回答

0

這是因爲href=""(不正確)與href="."(正確)相同,這與將當前url放入href中相同。

如果你只是想做一個按鈕,你可以使用一個<span>與一些CSS,如cursor: pointer和這樣的事情。