本文介绍如何在HTML页面的body标签内通过script标签引入外部JS文件,实现代码远程调用。重点讲解使用HTML to AnyCode等工具将HTML转换为JS代码时的注意事项,包括处理script标签、删除多余符号以及保留document.write或writeln输出语句。同时对比了两种写入方法的区别,并分享了在实际调用雅虎广告、经典下载站JS时的经验与限制。
HTML页面引入JS文件的方法
在网页的body标签与结束标签之间的合适位置插入以下代码片段:
<script language="JavaScript" src="head.js"
type="text/JavaScript"></script>
其中src属性指定JS文件的名称及路径。
2、js文件怎么写?
JS文件编写与工具转换注意事项
例如,若head.js文件内容如下,需将主页中需要转换为JS的HTML代码,通过JS语句“document.write”或“document.writeln”进行输出。
使用自动转换软件处理此过程较为便捷,例如使用“HTML to AnyCode”工具,并将结果存入对应的JS文件中。
需要注意以下事项:
若使用“HTML to AnyCode”保存文档,文件末尾可能会多出一个“/”符号,需手动删除,否则主页面无法正确显示调用内容。
如果直接复制生成的代码,则需要去除“<script language="JavaScript">”,
<!--”以及“//--> </script>”部分,仅保留“document.writeln”输出语句。
document.write与writeln的区别
补充说明:document.write() 与 document.writeln() 的区别
document.write()
//将内容写入文档,当前编辑位置位于写入内容的下一个字符处。
document.writeln()
//将内容写入文档,并添加一个换行符,当前编辑位置位于写入内容下一行的起始位置。
document.write()和document.writeln()均为JavaScript向客户端写入内容的方法。
Writeln以行方式输出,一般情况下两种方法在页面显示效果上无区别,仅在查看源代码时可见差异,除非输出内容包含在pre或xmp元素内。
代码如下:
document.writeln("百度")
document.writeln("百度")
document.writeln("知道")
document.writeln("知道")
document.writeln("知道")代码如下:
document.write("<pre>百度")
document.write("百度")
document.write("知道")
document.write("知道")
document.write("知道</pre>")实际调用测试与经验总结
今日测试了经典下载站的JS远程调用功能,基本达到了预期效果。
然而,大蒜系统自带的标签无法进行转换。
经咨询客服得知原因:“无法使用JS调用,我们的标签是在页面加载时通过一次扫描对标签进行解析输出的,如果在JS中调用,即使通过转义输出标签也不会被解析。”
需注意的是,在使用JS转换HTML代码时,最好仅转换DIV占位符内的内容,这样可以保持整个页面的位置固定,避免发生错位。
另外发现,使用JS调用JS时,经“HTML to AnyCode”转换后无需再做修改,可直接使用。
雅虎广告在JS调用后,不需特殊处理,可直接使用。
Google广告尚未测试,待后续解决。