JavaScript noob在这里,我有一段简单的代码,但我调用我定义的函数的onclick事件没有执行。这是代码:
<!DOCTYPE html>
<html>
<head>
<title>
window.navigator
<script>
function thankYou(){
alert("Thanks for Checking!");
}
</script>
</title>
<style>
td{border:1px solid gray;padding:3px 5px;}
</style>
</head>
<body>
<script>
document.write("<table>");
document.write("<tr><td>appName</td><td>"+navigator.appName+ </td></tr>");
document.write("<tr><td>appCodeName</td><td>"+navigator.appCodeName+"</td></tr>");
document.write("<tr><td>appVersion</td><td>"+navigator.appVersion+"</td></tr>");
document.write("<tr><td>language</td><td>"+navigator.language+"</td></tr>");
document.write("<tr><td>cookieEnabled</td><td>"+navigator.cookieEnabled+"</td></tr>");
document.write("<tr><td>cpuClass</td><td>"+navigator.cpuClass+"</td></tr>");
document.write("<tr><td>onLine</td><td>"+navigator.onLine+"</td></tr>");
document.write("<tr><td>platform</td><td>"+navigator.platform+"</td></tr>");
document.write("<tr><td>No of Plugins</td><td>"+navigator.plugins.length+"</td></tr>");
document.write("</table>");
</script>
<p>
<input type="button" name="Thanks for checking!" value="Click me!" onClick="thankYou()"/>
</p>
</body>
</html>
任何人都可以解释我做错了什么吗?谢谢!
答案 0 :(得分:2)
你有一个错字。在第一个文档写入行中缺少"
。此外,脚本标记不应位于标题标记中。
document.write("<tr><td>appName</td><td>"+navigator.appName+ </td></tr>");
^^^
答案 1 :(得分:1)
您错过了引号并需要移动脚本标记,请参阅下面的工作示例。
<!DOCTYPE html>
<html>
<head>
<title>
window.navigator
</title>
<style>
td {
border: 1px solid gray;
padding: 3px 5px;
}
</style>
</head>
<body>
<script>
function thankYou() {
alert("Thanks for Checking!");
}
</script>
<script>
document.write("<table>");
document.write("<tr><td>appName</td><td>" + navigator.appName + "</td></tr>");
document.write("<tr><td>appCodeName</td><td>" + navigator.appCodeName + "</td></tr>");
document.write("<tr><td>appVersion</td><td>" + navigator.appVersion + "</td></tr>");
document.write("<tr><td>language</td><td>" + navigator.language + "</td></tr>");
document.write("<tr><td>cookieEnabled</td><td>" + navigator.cookieEnabled + "</td></tr>");
document.write("<tr><td>cpuClass</td><td>" + navigator.cpuClass + "</td></tr>");
document.write("<tr><td>onLine</td><td>" + navigator.onLine + "</td></tr>");
document.write("<tr><td>platform</td><td>" + navigator.platform + "</td></tr>");
document.write("<tr><td>No of Plugins</td><td>" + navigator.plugins.length + "</td></tr>");
document.write("</table>");
</script>
<p>
<input type="button" name="Thanks for checking!" value="Click me!" onClick="thankYou()" />
</p>
</body>
</html>
&#13;
答案 2 :(得分:1)
<title>
中没有脚本标记。您的浏览器很可能会在标题栏中逐字显示文本,因为它应该是什么。某些浏览器在标题中有额外的空格问题(或者有),例如换行符。更好地去除它们。
扔掉你的书,它一定真的很老了。不要使用document.write(...)
,忘记此功能存在。不要使用<tag onevent="...">
,而应使用event listeners。还要阅读控制台输出(shift + ctrl + k或F12)以在JavaScript代码中找到拼写错误。
对不同编程语言的引物的概述:here。 (但网站的标题可能令人反感。:))