2010-07-13 54 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和这样的事情。