簡體   English   中英

頁面加載隨機背景圖像

[英]random background-image on page load

我正在嘗試讓我的背景圖片在用戶每次訪問該網站時有機會出現。 我在stackoverflow上找到了一些代碼,但似乎無法正常工作。

此代碼有什么問題?

碼:

$(document).ready(function() {    
    var bgArray = ['A-VOLTE.jpg', 'AL-DI-LA.jpg', 'CON-TE.jpg', 'DAVIDE-E-GOLIA.jpg', 'DELLE-VERITA.jpg', 'DI-NOI.jpg', 'DIVIDERE.jpg', 'FA-NIENTE.jpg', 'FORSE.jpg', 'GRAZIE.jpg', 'IL-CONTATTO.jpg', 'IL-PONTE.jpg', 'IMPERATIVO.jpg', 'INDELEBILE.jpg', '-VOLONTA.jpg', 'MERITAVI.jpg', 'MUOVERE.jpg', 'NEL-DUBBIO.jpg', 'NESSUNO.jpg', 'NON-LO-SAI.jpg', 'PER-DIMENTICARE.jpg', 'PRIMA-DI-ANDARE.jpg', 'PROFONDO.jpg', 'SARA-SUO.jpg', 'SEMPRE.jpg', 'TUTTO-DA-RIFARE.jpg', 'TUTTO-PER-TE.jpg', 'UN-RICORDO.jpg', 'UNTITLED-1.jpg', 'UNTITLED-2.jpg', 'VERO.jpg', 'VIENI-CON-ME.jpg'];
    var bg = bgArray[Math.floor(Math.random() * bgArray.lenght)];
    // If you have defined a path for the images
    var path = 'artworks/abstract/';
    var imageUrl = path + bg;
    // then you can put it right before the variable 'bg'
    $('body').css('background-image', 'url(' + imageUrl +')');          
});


我沒有任何警報,沒有機會,什么也沒有。 非常感謝你的幫助!

var bg = bgArray[Math.floor(Math.random() * bgArray.lenght)]; length是錯誤的var bg = bgArray[Math.floor(Math.random() * bgArray.lenght)];

編輯:如果不是這樣,請確保使用javascript控制台。 一個簡單的imageUrl變量日志將為您提供有關錯誤的線索。

您拼寫錯誤, bgArray.lenght是錯誤的。 這必須是bgArray.length

運行正常!

$(document).ready(function() {
  var bgArray = ['A-VOLTE.jpg', 'AL-DI-LA.jpg', 'CON-TE.jpg', 'DAVIDE-E-GOLIA.jpg', 'DELLE-VERITA.jpg', 'DI-NOI.jpg', 'DIVIDERE.jpg', 'FA-NIENTE.jpg', 'FORSE.jpg', 'GRAZIE.jpg', 'IL-CONTATTO.jpg', 'IL-PONTE.jpg', 'IMPERATIVO.jpg', 'INDELEBILE.jpg', '-VOLONTA.jpg', 'MERITAVI.jpg', 'MUOVERE.jpg', 'NEL-DUBBIO.jpg', 'NESSUNO.jpg', 'NON-LO-SAI.jpg', 'PER-DIMENTICARE.jpg', 'PRIMA-DI-ANDARE.jpg', 'PROFONDO.jpg', 'SARA-SUO.jpg', 'SEMPRE.jpg', 'TUTTO-DA-RIFARE.jpg', 'TUTTO-PER-TE.jpg', 'UN-RICORDO.jpg', 'UNTITLED-1.jpg', 'UNTITLED-2.jpg', 'VERO.jpg', 'VIENI-CON-ME.jpg'];
  var bg = bgArray[Math.floor(Math.random() * bgArray.length)];
  var path = 'artworks/abstract/';
  var imageUrl = path + bg;
  $('body').css('background-image', 'url(' + imageUrl +')');
});

隨機化數組數字的方式表示長度,應為長度。

隨機分組時,您錯過了拼寫技巧! 您必須使用提供的文字。

Math.random() * bgArray.lenght

將會:

Math.random() * bgArray.length // note the length

因此,您的代碼如下所示:

var bg = bgArray[Math.floor(Math.random() * bgArray.length)];

等等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM