有很多种方法可以使用JavaScript。当我使用带锚的JavaScript时,我会编写这样的代码,我认为这种方式是正确的。
<a href="#;" onclick="alert('hi');">Method One</a>
但我的同事使用这样的JS。
<a href="javascript:alert('hi');">Method Two</a>
是否有编码标准或两种方法都正确?
答案 0 :(得分:1)
免责声明:一般来说,内联JavaScript是一个坏主意,99%的时候你最好分离问题,使用jQuery等库,或者你选择的框架推荐的类似工具集
尽管如此,要回答您的问题,如果您必须使用内联JavaScript,我建议您省略“JavaScript:”关键字。它指定了“伪协议”,并不是现代浏览器解释代码所必需的。它是过去十年的遗物,IE的某些版本存在一个错误:
“javascript协议有一个(有点模糊)错误 - 在 Internet Explorer *,它会认为你离开页面时 单击链接。如果您正在使用window.onbeforeunload,那么您的 此时会出现导航信息。仅仅因为这个原因, 我们已经完全停止使用javascript协议,所以我们没有 有这个错误出现,因为我们添加一个忘记检查它 将消息导航到某个页面。“
When do I need to specify the JavaScript protocol?
https://bytes.com/topic/javascript/answers/504856-javascript-pseudo-protocol-event-handlers
答案 1 :(得分:-3)
两种方法都可以,但首先应该使用外部JS文件。否则就可以了。 对于小型任务和事件,第二种方式是好的。