![](/img/trans.png)
[英]How can I have an HTML element that behaves like an anchor, but is not an anchor?
[英]How can I specify an anchor tag behaves like a hyperlink, without an href and without an anchor name?
好的,所以这个线程有一些相似的线程,但是我找不到任何将其钉在头上的东西,所以我们开始吧。
我正在尝试使用anchor标签模拟链接,如下所示:
<a onClick="javascript: DownloadPorn();">Click Here!</a>
所有这些工作都很好,很花哨。 该链接显示,我可以单击它,并且我的javascript方法已成功执行。
这里的问题是,如何正确强制链接以与实际“ HTML链接”相同的方式显示? 或者,以一种“相同的方式”,就像我要在上述标记中使用href一样; 像这样:
<a href="#" onClick="javascript: DownloadMorePorn();">Click Here!</a>
现在...此代码段强制链接以我期望的方式显示,但是在使用此方法时,单击链接时,滚动位置会弹回顶部。
很明显,这不是我要开发的框架的预期行为。 如果有人对解决此特定问题有任何建议,非常感谢您的投入。
---在全部输入时,我认为可以在屏幕顶部放置一个静态锚点(例如0,0或-,-),并强制所有链接引用该锚点。 如果有人在该解决方案中发现任何可行性,那么我很可能会探索它。
-编辑-
接受的答案:
为了使锚点表现为超链接,而无需操纵浏览器的当前位置; 利用Javascript方法在href属性中不返回任何内容(?),或在锚的替代事件处理程序之一(即onClick方法)中有效返回“ false”。
可能的解决方案:
<a href="javascript: DoSomething();">Link</a>
<a href="javascript: void(0);" onClick="javascript: DoSomething();">Link</a>
<a href="#" onClick="javascript: DoSomething(); return false;">Link</a>
再次感谢大家。
-结束编辑-
将href
设置为javascript:void(0);
,这意味着浏览器将显示该链接,就好像它具有真实的href
:
<a href="javascript:void(0);" onClick="javascript: DownloadBooks();">Click Here!</a>
还有其他方法,例如将href设置为#
,但是所示方法的优点是您不必担心返回false或指定return DownloadBooks()
。
这个问题有一些有关javascript:void(0)
的使用的信息。
将javascript函数设置为href。
<a href="javascript:DownloadPorn();">Click Here!</a>
编辑:只是要注意一些考虑这种不良做法。
如果在onclick属性的末尾使用return false
,则不会使其滚动到任何位置。
<a href="#" onClick="someFunc(); return false;">Click Here!</a>
或者,您可以使函数返回false,然后返回其结果(false)并在较短的onclick属性中执行它:
<script type="text/javascript">
function someFunc() {
// all your function code here
return false;
}
</script>
<a href="#" onClick="return someFunc()">Click Here!</a>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.