Javascript - 在新文档中显示浏览器的详细信息
我想创建一个按钮,它将在使用javascript的新文档中显示浏览器的详细信息。我已经在这里搜索和w3schools,我很难过!我真的很新的JavaScript,所以任何建议,非常感谢。谢谢!Javascript - 在新文档中显示浏览器的详细信息
<html>
<head>
<script type="text/javascript">
function docOpen()
{
document.open();
document.write(browserDetails);
}
function browserDetails() {
var x = navigator
document.write("CodeName=" + x.appCodeName)
document.write("<br />")
document.write("MinorVersion=" + x.appMinorVersion)
document.write("<br />")
document.write("Name=" + x.appName)
document.write("<br />")
document.write("Version=" + x.appVersion)
document.write("<br />")
document.write("CookieEnabled=" + x.cookieEnabled)
document.write("<br />")
document.write("CPUClass=" + x.cpuClass)
document.write("<br />")
document.write("OnLine=" + x.onLine)
document.write("<br />")
document.write("Platform=" + x.platform)
document.write("<br />")
document.write("UA=" + x.userAgent)
document.write("<br />")
document.write("BrowserLanguage=" + x.browserLanguage)
document.write("<br />")
document.write("SystemLanguage=" + x.systemLanguage)
document.write("<br />")
document.write("UserLanguage=” + x.userLanguage)
}
</script>
</head>
<body>
<form>
<input type="button" onclick="docOpen()" value="Get Browser Details">
</form>
</body>
你有一个适当的标准(直)双引号这里的卷曲双引号:
document.write("UserLanguage=” + x.userLanguage)
^
这导致一个语法错误。用直接的引号替换它。
你可以这样做基于@Barmar评论
<script>
function docOpen()
{
document.open();
browserDetails(); // ADD '()' to call the function --
}
function browserDetails() {
var x = navigator;
// iterate through all properties and get the values
for(var prop in x) {
document.write(prop+' = '+ x[prop]+'<br />');
}
}
</script>
问题
<html>
<head>
<script>
function docOpen()
{
document.open();
document.write(browserDetails()); // ADD '()' to call the function
}
function browserDetails() {
var x = navigator;
// iterate through all properties and get the values
for(var prop in x) {
document.write(prop+' = '+ x[prop]+'<br />');
}
}
</script>
</head>
<body>
<form>
<input type="button" onclick="docOpen()" value="Get Browser Details">
</form>
</body>
编辑是,你是不是要么调用您所定义的功能。对browserDetails
的调用不是一个调用,它只是一个参考,并没有什么是调用docOpen
函数。
变更线4 document.write(browserDetails());
然后调用docOpen docOpen()
您还需要修复的智能报价由duskwuff的指示。 https://jsfiddle.net/87q1a0kn/
'browserDetails()'不返回任何东西,将它作为参数传递是没有意义的。 – Barmar
它不会因为写入文档而返回任何内容。它仍然需要被调用 – danwellman
是的,它需要被调用,但不能作为'document.write()'的参数。只要做'browserDetails();'。 – Barmar
W3Schools的建议(见【规范】警告不良行为,比如'document.write'(http://www.w3.org/TR/html5/webappapis:
我在做一个工作的小提琴html的#文件撰写%28%29))。我建议避免这两个。 – Oriol
谢谢Oriol。我的大学教授给我提供了document.write作为例子。这对于班级来说并不好。 lol –