当前位置: 首页 > 面试题库 >

对于JavaScript链接,“#”或“JavaScript:void(0)”,应该使用哪个“href”值?

冯玮
2023-03-14
问题内容

以下是构建链接的两种方法,其唯一目的是运行JavaScript代码。在功能,页面加载速度,验证目的等方面哪个更好?

function myJsFunc() {
    alert("myJsFunc");
}
<a href="#" onclick="myJsFunc();">Run JavaScript Code</a>

要么

function myJsFunc() {
    alert("myJsFunc");
}
 <a href="javascript:void(0)" onclick="myJsFunc();">Run JavaScript Code</a>

问题答案:

老实说,我都不建议。我会<button></button>为该行为使用程式化。

button.link {
  display: inline-block;
  position: relative;
  background-color: transparent;
  cursor: pointer;
  border: 0;
  padding: 0;
  color: #00f;
  text-decoration: underline;
  font: inherit;
}
<p>A button that looks like a <button type="button" class="link">link</button>.</p>

这样,你可以分配onclick。我还建议通过脚本进行绑定,而不要使用onclickelement标签上的属性。唯一的难题是无法禁用的较旧IE中的伪3d文本效果。

如果必须使用A元素,请使用javascript:void(0);已经提到的原因。

  • 万一你的onclick事件失败,它将始终拦截。
  • 不会发生错误的加载调用,也不会基于哈希更改触发其他事件
  • 如果单击失败(onclick抛出),则hash标签可能会导致意外的行为,请避免使用它,除非它是适当的失败行为,并且你要更改导航历史记录。
    注意:你可以将替换为0一个字符串,例如,javascript:void('Delete record 123')它可以作为一个额外的指示符,显示点击实际执行的操作。


 类似资料:
  • 问题内容: 以下是构建链接的两种方法,其唯一目的是运行JavaScript代码。在功能,页面加载速度,验证目的等方面哪个更好? 要么 问题答案: 我用。 三个原因。鼓励#在一组开发人员中使用,不可避免地导致某些人使用这样的函数的返回值: 但是后来他们忘记在中使用,而只使用。 避免的第二个原因是,;如果被调用的函数抛出错误,则最终语句将不会执行。因此,开发人员还必须记住在调用的函数中适当地处理任何错

  • 问题内容: 有两个progid。我看过都用过。 任何人都对我何时应该使用一个相对于另一个使用有任何见解? 问题答案: 海志es 看看这些 http://bytes.com/topic/javascript/answers/559991-msxml-xmlhttp-vs-microsoft- xmlhttp http://forums.asp.net/p/1000060/1622845.aspx

  • 本文向大家介绍a标签下的href="javascript:void(0)"起到了什么作用?说说你对javascript:void(0)的理解?相关面试题,主要包含被问及a标签下的href="javascript:void(0)"起到了什么作用?说说你对javascript:void(0)的理解?时的应答技巧和注意事项,需要的朋友参考一下 引用 博客:javascript:是伪协议,表示url的内容

  • 本文向大家介绍请解释下href="javascript:void(0)"和href="#"的区别是什么?相关面试题,主要包含被问及请解释下href="javascript:void(0)"和href="#"的区别是什么?时的应答技巧和注意事项,需要的朋友参考一下 "#" 包含了一个位置信息,默认的锚是#top 也就是网页的上端。 而javascript:void(0), 仅仅表示一个死链接。 在页

  • 我有一个应用程序,可以导航到无法前进的页面。想想单击电视指南中的节目以打开包含该节目详细信息的页面,显然您会想回到电视指南。 对于返回电视指南的按钮,我有一个<代码> 以下哪种情况是最可取的使用情形: 使用href=“/guide” 或

  • 问题内容: 的(Java持久性API)规范有2名不同的方式来指定实体组合键:和。 我在映射的实体上同时使用了这两个注释,但是对于不太熟悉的人来说,这真是一个大麻烦。 我只想采用一种指定复合键的方法。哪个真的是最好的?为什么? 问题答案: 我认为这可能更冗长,因为无法使用任何字段访问运算符来访问整个主键对象。使用,您可以这样做: 这给构成组合键的字段提供了清晰的概念,因为它们都聚集在通过字段访问运算