2013-12-16 2 views
0

Этот код должен использовать любое изображение .jpg из/images/bg/folder, однако, похоже, оно не принимает изображения ниже определенного разрешения ... любые предложения?js body случайное фоновое изображение

<!--random background images from a folder--> 

<script type="text/javascript"> 
     var totalCount = 5; 
     function ChangeIt() { 
      var num = Math.ceil(Math.random() * totalCount); 
      document.body.background = 'images/bg/' + num + '.jpg'; 
      document.body.style.backgroundSize = "cover"; 
     } 
</script> 
+0

Добро пожаловать в Переполнение стека. Вы действительно имеете в виду разрешение (пиксели на дюйм), или вы имеете в виду размер (пиксели)? Какой порог вы наблюдаете, разделяя изображения, которые работают, и изображения, которые этого не делают? Пожалуйста, отредактируйте свой вопрос, чтобы уточнить. –

ответ

4

Demo

document.body.background устарела, она должна быть document.body.style.background и формат вы даете это не так. Попробуйте

document.body.style.background = 'url(images/bg/' + num + '.jpg)'; 

Следующая также работает и не удаляет другие атрибуты фона, как backgroundSize, например, так что вам не нужна строка document.body.style.backgroundSize = "cover"; до тех пор, как это было установлено в первую очередь.

document.body.style.backgroundImage = 'url(images/bg/' + num + '.jpg)'; 

Итак, ваш код будет читать

<script type="text/javascript"> 
    document.body.style.backgroundSize='cover'; 
    document.body.style.backgroundRepeat='no-repeat'; // i've assumed this 
    var totalCount = 5; 
    function ChangeIt() { 
     var num = Math.ceil(Math.random() * totalCount); 
     document.body.style.backgroundImage = 'url(images/bg/' + num + '.jpg)'; 
    } 
</script> 

Хотя, в идеале вы бы установить крышку и не повторять в файле CSS.

+3

, в то время как ваш ответ правильный, я хотел бы расширить его, указав, что document.body.background устарел. use document.body.style.background = 'url (...)'; вместо. – seanxe

+0

@seanxe спасибо. – Popnoodles

1

Использование document.body.style.backgroundImage = "url ('" +' images/bg/'+ num +' .jpg '+ ")";

(google о css background image).

Смежные вопросы