Javascript inline onclick转到本地锚点

时间:2012-08-05 09:22:41

标签: javascript

我有一个按钮作为图像......

<img src="button.png" />

我在onclick中需要一些javascript,点击它时会导航到本地锚点。例如:

<img src="button.png" onclick="navigateTo #page10" />

我该怎么做?

更新:这是我正在使用的代码:

onclick="document.location=#goToPage';return false;"

4 个答案:

答案 0 :(得分:25)

在接受的答案中提出的解决方案有一个重要的问题,它只能使用一次。每次连续点击都会将#goToPage附加到位置,并且窗口不会导航到锚点。

解决方案是在附加新锚点之前删除锚点部分:

function goToAnchor(anchor) {
  var loc = document.location.toString().split('#')[0];
  document.location = loc + '#' + anchor;
  return false;
}

用法示例:

<a href="#anchor" onclick="goToAnchor('anchor')">Anchor</a>

注意:锚必须用引号括起来,没有哈希前缀。

答案 1 :(得分:15)

看起来onClick应该是:

onclick="document.location+='#goToPage';return false;" 

答案 2 :(得分:5)

将其包裹在锚标记中。您不需要使用JS。

<a data-role="none" href="#page10"><img src="button.png" /></a>

答案 3 :(得分:1)

尝试将/斜杠用于root或/ folder /,因此可以多次使用。

onclick="document.location='/#goToPage';return false;" 

onclick="document.location='/folder/#goToPage';return false;"