Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   создать несколько div-ов с background image (https://javascript.ru/forum/events/40099-sozdat-neskolko-div-ov-s-background-image.html)

Krot 23.07.2013 19:57

создать несколько div-ов с background image
 
Ребят помогите!

дело в том что надо динамически создать несколько дивов с баграундами из массива типа такого
var u = ['/img/1.jpg', '/img/2.jpg', '/img/3.jpg'];

Не могу понять как это сделать :help:

ksa 23.07.2013 22:18

Цитата:

Сообщение от Krot
Не могу понять как это сделать

Смотря что понимать под твоим "динамически создать"...
И что из этого тебе не понятно как делать...

Див умеешь делать?
Фон умеешь задавать?

Krot 23.07.2013 23:36

Цитата:

Див умеешь делать?
Фон умеешь задавать?
<!DOCTYPE HTML>
<html>
  
  <head>
    <meta http-equiv="content-type" content="text/html" />
    <meta name="author" content="admin" />
    <title>Untitled - 1</title>
  </head>
  
  <body>
    <input type='button' value='click me' onclick='click_me()'/>
  </body>
  <script>
    
    function click_me() {
      var div = document.createElement('div');
      div.style.backgroundImage= 'url(https://www.google.ru/images/google_favicon_128.png)';
      div.style.width = '128px'
      div.style.height = '128px'
      document.body.appendChild(div);
    };
    
  
    
  </script>

</html>

zilker 23.07.2013 23:41

<head>
<style>
body div {
    height: 100px;
    width: 250px;
    background-color: #c1c1c1;
    margin: 5px;
    float: left;
}
</style>
</head>
<body>
</body>
<script>
function createDivs() {
    var u = ['/img/1.jpg', '/img/2.jpg', '/img/3.jpg'], tmp = document.createDocumentFragment();
    for (var i = 0; i<u.length; i++) {
        var div = document.createElement('div');
        div.style.backgroundImage = 'url(' + u[i] + ')' ;
        div.innerHTML = 'Мой background-image = ' + u[i];
        tmp.appendChild(div);
    }
    document.getElementsByTagName('body')[0].appendChild(tmp);
}
createDivs();
</script>

Krot 23.07.2013 23:45

zilker,огромное спасибо буду исправляться! :write:

ruslan_mart 24.07.2013 17:09

var u = ['/img/1.jpg', '/img/2.jpg', '/img/3.jpg'];
for(var i in u) document.write('<div style="background-image:url(\''+u[i]+'\')"></div>');

zilker 24.07.2013 17:14

во-втором - в смысле моём?


Часовой пояс GMT +3, время: 04:35.