您的 HTML DOCTYPE 是过渡性的吗?如果不是,也许您的代码应该看起来更像:
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN'
'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<body>
<input type='button' value='Show alert box' onclick='myFunction()' />
<script type='text/javascript'>
function myFunction(){
alert('I am an alert box!');
}
</script>
</body>
</html>
当然,我重新安排了它。您的代码应该可以工作。我个人建议您的代码看起来更像:
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN'
'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<body>
<input type='button' value='Show alert box' id='btn' />
<script type='text/javascript' src='external.js'></script>
<script type='text/javascript'>
showAlert('btn');
</script>
</body>
</html>
external.js
将被缓存。它看起来像:
function E(e){
return document.getElementById(e);
}
function showAlert(e){
E(e).onclick = function(){
alert('I am an alert box!');
}
}
后面的代码更可重用,并且会让您了解 jQuery 的$()
. E()
这是我的功能的一个更复杂的版本。