神奇的"javascript:"
上周,从 GuoXing同学 http://weibo.com/runflash 那里学习的一个知识点,没等到他的博客,我就抢先记录一下。(捋须笑过)
问题:以下代码里的“javascript:”是起什么作用?
<input type=button value=test onclick="javascript:alert(1)"/>
在href里写“javascript:alert(1)”,这里是作伪协议,不过在onclick里写,是有什么用呢?
难道是指定语言类型? ok,再我们改下试下:
<input type=button value=test onclick="hello:alert(1)"/>
发现代码还是可以正常执行的。这么说来应该不是script语言类型。
那是什么呢?如果语法合理的话,那看来只能是label了。写个代码来验证下是不是label:
<input type=button value=test onclick="{javascript: while(confirm('once more?')){continue javascript;}} "/>
经验证,确定为label。
这个label显然是多余的。
结论就是:以下写法里的"javascript:"完全是不恰当的多余。----可能是以讹传讹、胡乱Copy的产物。
<input type=button value=test onclick="javascript:alert(1)"/>
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步