运行 JavaScript 的链接

只需使用 javascript:协议将文本作为 JavaScript 运行,而不是将其作为普通链接打开:

<a href="javascript:myFunction();">Run Code</a>

你还可以使用 onclick 属性实现相同的功能:

<a href="#" onclick="myFunction(); return false;">Run Code</a>

当点击 # 的链接时,return false; 是防止页面滚动到顶部所必需的。确保包含你之前要运行的所有代码,因为返回将停止执行更多代码。

另外值得注意的是,你可以在主题标签后面添加感叹号 !,以防止页面滚动到顶部。这是有效的,因为任何无效的 slug 都会导致链接无法在页面上的任何位置滚动,因为它无法找到它引用的元素(带有 id="!" 的元素)。你也可以使用任何无效的 slug(例如 #scrollsNowhere)来达到同样的效果。在这种情况下,return false; 不是必需的:

<a href="#!" onclick="myFunction();">Run Code</a>

你应该使用这些吗?

答案几乎肯定是否定的。使用像这样的元素内联 JavaScript 运行是相当糟糕的做法。考虑使用纯 JavaScript 解决方案来查找页面中的元素并将函数绑定到它。听一个事件

还要考虑这个元素是否真的是一个按钮而不是一个链接。如果是这样,你应该使用 <button>