定義數組時,您必須在數組值之間使用逗號分隔符。
你還應該有兩個獨立的腳本元素,一個用於包含jquery,另一個用於代碼。
大多數瀏覽器都應該忽略具有src屬性的腳本標記的內容。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript" ></script>
<script type="text/javascript">
var images = ['OUT01ari.jpg', 'OUT02adobe.jpg', 'OUT03alife.jpg', 'OUT04chinup.jpg', 'OUT05datenightwinecologne.jpg', 'OUT06officechair.jpg', 'OUT07printer.jpg', 'OUT08whitewall.jpg', 'OUT09umbrella.jpg', 'OUT10converse.jpg', 'OUT11wardrobebar.jpg'];
$('#background').css({'background-image': 'url(images/' + images[Math.floor(Math.random() * images.length)] + ')'});
</script>
W3C 4.3 Scripting HTML5說:
If there is a src attribute, the element must be either empty or contain only script documentation that also matches script content restrictions.
而且同樣適用於早期版本的,我相信如此。
編輯:
如果您的本地文件系統上工作時,請務必將網址更改爲jQuery來HTTP://,而不是僅僅//。
此外,請確保在#background元素存在時通過調用document ready來執行腳本。
這個例子甚至應該在本地工作:
<html>
<head>
<style type="text/css">
#background {
position:fixed; left: 0px;
top: 0px; background-size:100%;
width:100%; height:100%;
-webkit-user-select: none; -khtml-user-select: none;
-moz-user-select: none; -o-user-select: none; user-select: none;
z-index:9990;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript" ></script>
<script type="text/javascript">
$(function() {
var images = ['OUT01ari.jpg', 'OUT02adobe.jpg', 'OUT03alife.jpg', 'OUT04chinup.jpg', 'OUT05datenightwinecologne.jpg', 'OUT06officechair.jpg', 'OUT07printer.jpg', 'OUT08whitewall.jpg', 'OUT09umbrella.jpg', 'OUT10converse.jpg', 'OUT11wardrobebar.jpg'];
$('#background').css({'background-image': 'url(images/' + images[Math.floor(Math.random() * images.length)] + ')'});
});
</script>
</head>
<body>
<div id="background"></div>
<div class="container">
</div>
</body>
</html>
謝謝,我已經修正了這些錯誤以及isherwood和jacouh指出的錯誤,但圖像仍未加載。 – Hohohobo
我創建了一個可以工作的小提琴:http://jsfiddle.net/ffXUC/ - 雖然很難說你爲什麼不是。您是否檢查過瀏覽器控制檯/網絡開發人員工具(Chrome中的F12)是否有任何錯誤? – becquerel
謝謝 - 不,我沒有。我得到的錯誤是:Uncaught ReferenceError:$未定義index.html:11 (匿名函數)。第11行是:$('#background')。css({'background-image':'url(images /'+ images [Math.floor(Math.random()* images.length)] +')'} ); – Hohohobo