javascript - 错误 : document. getElementsByTagName(...)[0] 的来源未定义

标签 javascript awstats

我正在使用 awstats js 跟踪器文件 awstats_misc_tracker.js,一旦我包含它,它就会在我的控制台中显示此错误:

TypeError: document.getElementsByTagName(...)[0] is undefined
     document.getElementsByTagName("body")[0].appendChild(l);

这是呈现此错误的部分:

var imgsrc1 = awstatsmisctrackerurl+'?screen='+TRKscreen+'&win='+TRKwinsize+'&cdi='+TRKcdi+'&java='+TRKjava;
var imgsrc2 = '&shk='+TRKshk+'&svg='+TRKsvg+'&fla='+TRKfla+'&rp='+TRKrp+'&mov='+TRKmov+'&wma='+TRKwma+'&pdf='+TRKpdf+'&uid='+TRKuserid+'&sid='+TRKsessionid;
//alert(imgsrc1);
//alert(imgsrc2);
var imgsrc=imgsrc1+imgsrc2;
if( document.createElementNS ) {
    var l=document.createElementNS("http://www.w3.org/1999/xhtml","img");
    l.setAttribute("src", imgsrc );
    l.setAttribute("height", "0");
    l.setAttribute("width", "0");
    l.setAttribute("border", "0");
    document.getElementsByTagName("body")[0].appendChild(l);
} else {
    document.write('<img style="display:none;" src="'+ imgsrc +'" height="0" width="0" border="0" />')
}

任何人都可以告诉我这个错误的来源以及如何防止它吗?

最佳答案

您在定义正文之前将脚本包含在 head 中。

脚本在 HTML 文件中被解析和执行。

您应该在主体声明后包含此脚本。

包含所有 javascript 的推荐位置是在 HTML 文件的底部,但它有时会破坏遗留代码。

另一种方法是在 onload 页面事件或使用查询和“就绪”功能后执行脚本。

关于javascript - 错误 : document. getElementsByTagName(...)[0] 的来源未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23739219/

相关文章:

javascript - Array.push 将我所有的数组元素替换为最后插入的元素

javascript - 关于超链接 Javascript 对象的问题

javascript - jQuery 是否有 "exists"函数?

html - AWStats 额外部分列宽

typo3-6.2.x - Nginx 为每个域单独的访问日志

javascript - React Native、Rx.Net 和 RxSwift : commonalities

javascript - Chrome 在下载为 PDF 时阻止 Blob 对象

apache - Debian 10 上的 Awstats - 访问次数太少 - 修复它的选项

使用单一安装在同一台服务器上的多个域的 AWStats

javascript - AWStats 还是谷歌分析?哪个更准确?