【问题标题】:What does href=javascript:{} do?href=javascript:{} 有什么作用?
【发布时间】:2018-09-15 18:11:27
【问题描述】:

在下面的代码中使用javascript:{} 的原因是什么。和href="javascript:"href="javascript:void(0)"类似吗?

<a href="javascript:{}">This is an example</a>

【问题讨论】:

标签: javascript html href


【解决方案1】:

让超链接看起来像一个链接,但没有链接任何东西。

&lt;a href="javascript:{}"&gt;This is an example&lt;/a&gt;

如果您删除href 属性,则a 标记将是普通文本。

【讨论】:

    【解决方案2】:

    它使按钮的行为类似于链接,但允许您执行自定义 JS 代码而不是链接到网页。

    例如:

    &lt;a href="javascript:{ document.write('hi u just pressed me');}"&gt; Press me pls &lt;/a&gt;

    表现得像

    <div onclick="doOnClick()"> Press me pls </a>
    <script>
        function doOnClick(){ document.write('hi u just pressed me'); }
    </script>

    但浏览器将前者视为链接。

    【讨论】:

    • 很好的例子,我没想到它是内联 JS。因此,在我的示例中,这个“{}”实际上是一个 NOP。这个例子和去掉空括号有什么区别吗?
    • 响应很晚,但是是的,“{}”是 NOP。花括号可以像代码块一样工作。所以在我的例子中,它会被解释为一个代码块。但我相信空花括号会被解释为空对象的声明。
    猜你喜欢
    • 2011-12-06
    • 1970-01-01
    • 2013-05-31
    • 2015-03-11
    • 2011-10-21
    • 2020-06-17
    • 1970-01-01
    • 1970-01-01
    • 2011-10-26
    相关资源
    最近更新 更多