繁体   English   中英

如何指定锚标记的行为类似于超链接,没有href和锚名称?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM