我有一个javascript,当放在我的HTML头部时工作。 它会动态更改div'bg'中的背景图像。
<script type="text/javascript">window.onload = function () {
var header = document.getElementById('bg');
var pictures = new Array('http://someurl.com/bgs/1.jpg',
'http://someurl.com/bgs/2.jpg',
'http://someurl.com/bgs/3.jpg',
'http://someurl.com/bgs/4.jpg',
'http://someurl.com/bgs/5.jpg');
var numPics = pictures.length;
if (document.images) {
var chosenPic = Math.floor((Math.random() * numPics));
header.style.backgroundImage = 'url(' + pictures[chosenPic] + ')';</script>
我想将它用作外部.js文件,但是当我将脚本保存为dynamicbg1.js并将其调用时:
<script src="http://someurl.com/js/dynamicbg1.js"></script>
我收到错误,图片无法加载。
这是我得到的错误:
函数体后面的“SyntaxError:missing}”
但是当我在dynamicbg1.js中添加}}这样的时候:
window.onload = function () {
var header = document.getElementById('bg');
var pictures = new Array('http://someurl.com/bgs/1.jpg',
'http://someurl.com/bgs/2.jpg',
'http://someurl.com/bgs/3.jpg',
'http://someurl.com/bgs/4.jpg',
'http://someurl.com/bgs/5.jpg');
var numPics = pictures.length;
if (document.images) {
var chosenPic = Math.floor((Math.random() * numPics));
header.style.backgroundImage = 'url(' + pictures[chosenPic] + ')';
}
我得到了同样的错误。 任何人都可以帮助我让脚本作为外部.js文件工作吗?
答案 0 :(得分:3)
当您追加}
时,您正在关闭使用if (document.images) {
打开的区块。
仍然保持功能开放。
您需要另一个}
。