我有这段代码:
<html>
<head>
<script>
function myFunction() {
document.getElementById("demo").innerHTML="Hello World";
}
</script>
</head>
<body>
<button onclick="javascript:myFunction()">Click me</button>
<p id="demo"></p>
</body>
</html>
如果我按
更改<button onclick="javascript:myFunction()">Click me</button>
<button onclick="myFunction()">Click me</button>
我的代码正常运行。
这是onclick="javascript:myFunction()"
和onclick="myFunction()"
之间的差异吗?
答案 0 :(得分:7)
那是javascript:
伪协议,已经丢失了。当您在URL中使用Javascript时使用它,例如:
<a href="javascript:alert('hi')">Hi</a>
事件属性不支持:javascript
协议,因此它不起作用。但是,它恰好与Javascript中的标签成为相同的语法,因此尽管协议位于错误的位置,代码仍然可以正常工作。
所以,总而言之,:javascript
不应该存在,而且只是幸运的是它仍然会在它出现时起作用。