У меня этот html
<div class="mytext">
blablabla
</div>
<div class="part2" data-type="background" data-speed="10">
<img src="images/bb4.jpg" />
</div>
<div class="mytext">
hello hello world
</div>
<div class="part2" data-type="background" data-speed="10">
<img src="images/bb5.jpg" />
</div>
теперь я хочу получить каждый src изображений в контейнере part2, а затем изменить html на этот результат
<div class="mytext">
blablabla
</div>
<div class="part2" style="background:url('images/bb4.jpg') fixed;" data-type="background" data-speed="10">
</div>
<div class="mytext">
hello hello world
</div>
<div class="part2" style="background:url('images/bb5') fixed;" data-type="background" data-speed="10">
</div>
в основном я должен получить src, а затем отредактировать атрибуты контейнера div и удалить тег img, и я должен сделать это при загрузке страницы
Я написал этот кусок кода, чтобы получить src, но он не работает, и нет части изменения div
var elems = [].slice.call( document.getElementsByClassName("post2") );
elems.forEach( function( elem ){
elem.onclick = function(){
var arr = [],
imgs = [].slice.call( elem.getElementsByTagName("img") );
if(imgs.length){
imgs.forEach( function( img ){
var attrID = img.id;
arr.push(attrID);
});
alert(arr);
} else {
alert("No images found.");
}
};
});
может кто-нибудь мне помочь? :) спасибо
$('.part2').each(function(){
img = $(this).find('img');
$(this).css({'background': 'url(' + img.attr('src') + ') fixed'});
img.remove();
});
SInce вы добавили тег JQuery. Вот ответ в jquery.
$('#test').click(function(){
$('.part2').each(function(){
$(this).attr('style','background:url(\''+ $(this).find('img').attr('src')+'\') fixed;');
$(this).find('img').remove();
});
});
или
$('#test').click(function(){
$('.part2').each(function(){
$(this).css('background','url(\''+ $(this).find('img').attr('src')+'\') fixed');
$(this).find('img').remove();
});
});
styel
(typo?) Вы можете использовать метод .css()
.