如果您指定javascript:一些东西
作为的值href公司
属性,此某物
将在有人激活该链接时进行评估。
将检查此评估的结果:如果类型
计算结果为'未定义'
字符串,什么都不会发生;如果没有,页面将重新加载评估结果作为其内容:
<a href=“javascript:void(0);”>这里什么也看不到,继续</a>不,仍然没有</a><a href=“javascript:prompt('你今天想去哪里?');”>看看这个</a>
这里的前两个链接基本上什么都不做。但第三个更有趣:无论你输入什么促使
将显示给您-甚至是一个空字符串!但还不止这些:如果你点击取消
,你仍然会看到一个新页面-无效的
打印(已取消促使
收益无效的
你可能知道,null类型
事实上是对象
; 和无效的
转换为字符串是“null”
).
它可能会变得更有趣:
这里发生了什么</a><a href=“javascript:window.undefined=333;undefined;”>这里呢</a>
好吧,在这里,我们在第一个链接仍然一无所获。但第二个链接将显示IE8中的333。:)
我想这也回答了你的第二个问题:typeof void(0)will总是是未定义
.未定义的类型
如果有人决定把龙重新分配给窗口.未定义
. )
…是的,javascript:返回false;
错了:你不能从非功能环境中返回。你可能把它和onclick:返回false
,但这完全是另一回事。)