有没有可能创建一个什么也不做的链接?
我希望这个项目能够成为一个链接,这样当鼠标悬停时,光标会改变,但实际上我不想让这个链接去任何地方,因为它实际上会触发在同一页上显示额外功能的 div。
将添加到浏览器历史记录:
<a href="#"></a>
不会添加到浏览器历史记录(首选方法):
<a href="javascript:;"></a>
依我之见,最完整的无作弊解决方案是:
<a href="" onclick="return false;">do absolutely nothing</a>
onclick
中使用 JavaScript 函数(之后我只需返回 false):例如 <a href="" onclick="myFunction(); return false">my text</a>
。 - Brōtsyorfuzthrāx相反,你可以使用 <span>
元素,并设置光标样式:
<span id="node42" class="node-link">My Text</span>
在样式表中指定光标:
.node-link { cursor: pointer; }
这还可以让你稍后附加到节点进行操作(此处使用 Prototype 来展示):
<script type="text/javascript">
$('node42').observe('click', function(event) {
alert('my click handler');
});
</script>
id
可以使元素得到唯一标识,这在 JavaScript 示例中非常有用。你对于光标的观点很好。这可能更适合基于类的样式。我已经更新了我的答案。谢谢! - jheddingscursor:pointer
添加到元素即可:<a id="clickme">Click Me</a>
CSS:
#clickme { cursor: pointer }
<a style="cursor:pointer">Click Me</a>
cursor: pointer
不会自动应用。请解释一下。 - Doug Neiner这里有两种经典的JavaScript方法,它们不会在JavaScript控制台中产生错误,也不会改变URL或将其保存到您的浏览器历史记录中:
<a href="javascript:void(0);">Click on this JavaScript error-free link that won't change your URL nor save it into your browser history</a><hr />
<a href="#void">Maybe a more readable approach, but unfortunately this one changes your URL</a>
如果你只是想要样式,可以将CSS的cursor属性设置为pointer。
但是看起来你想要的是<a href="javascript:void(do_something())">
。
href
。
<a class='irrelevant_for_this_example'>一些文本</a>
href="#"
将滚动到页面顶部。
href="javascript:;"
看起来靠不住。href="javascript:;"
适用于此。删除href
意味着浏览器不会将其视为普通链接,即当您悬停在链接上时,鼠标不会变成手指形状。 - binaryfunthref="#void"
或类似的东西是可行的,而且可能更好。 - binaryfunt
href="javascript:;"
不是,也从未是首选方法。在 HTML 属性中放置 JS 代码应该尽量避免。 - Rory McCrossan