Смена баннера при обновлении страницы.

213
21 марта 2017, 13:51

Как сделать смену баннера(фонового background:url(ing..))при обновлении страницы, через js ?

Answer 1

Например, вот так:

var imgs = [
  'http://wallpapershome.com/images/pages/pic_h/4691.jpg',
  'http://hdwallpaperbackgrounds.net/wp-content/uploads/2015/08/american-washington-state-mountains-nature-wallpapers.jpg',
  'http://cdn01.wallconvert.com/_media/conv/1/1/503-1920x1080-wallpaper-nature.jpg',
];
function getRandomFrom(array) {
  var i = Math.floor(Math.random() * array.length);
  return array[i];
}
window.onload = function() {
  var ih = document.getElementById('img-holder');
  ih.style.backgroundImage = 'url("'+ getRandomFrom(imgs) +'")';
}

Пример целиком тут.

Answer 2

Вообще, эту плюшку нужно делать через PHP. Но в JS это можно осуществить через функцию Math.random() и массива изображений.

var images = [ 
  'https://www.gravatar.com/avatar/ed979fbf8590e9bd23202689dd40ec90?s=500&d=identicon&r=PG&f=1', 
  'https://i.stack.imgur.com/WZsJn.jpg?s=500&g=1', 
  'https://lh6.googleusercontent.com/-L1ctGGvnHAU/AAAAAAAAAAI/AAAAAAAAFgk/JCsookj4K34/photo.jpg?sz=500' 
]; 
 
var obj_img = document.querySelector('img'); 
 
var i = Math.floor(Math.random() * images.length); 
 
obj_img.setAttribute('src', images[i]);
<img src="">

READ ALSO
Как расширить свойства класса

Как расширить свойства класса

Я переписываю проект с es5 на es6 и использую angular 16

235
io.js не запускается из cmd в windows 10

io.js не запускается из cmd в windows 10

Суть ситуации такова: установлен iojs, установлен node

303
Классы и метод apply

Классы и метод apply

Вопрос по поводу apply: можете описать более подробно какие аргументы должны передаваться в apply и какого общее предназначение?

257
Использование fabric.js + web font loader

Использование fabric.js + web font loader

Использую fabricjs и несколько кастомных шрифтов для своего приложения

240