替换javascript中的样式值

时间:2018-09-21 16:20:30

标签: javascript html replace

我希望使用js更改标签中的值。

<div class="class1" style="background-image:url(https://www.awebsite.com/sites/default/files/a_image.jpg?t=1529620960)"></div>

我要更改此内容:

https://www.awebsite.com/sites/default/files/a_image.jpg?t=1529620960`

对此:

https://hello.com/an-other-image.jpg

谢谢!

3 个答案:

答案 0 :(得分:4)

您可以执行以下操作:

c = document.getElementsByClassName('class1');
for(i = 0; i < c.length; i++){
    c[i].style.backgroundImage = 'url(https://hello.com/an-other-image.jpg)';
}

答案 1 :(得分:4)

您可以使用document.querySelector获取对<div>元素的引用,然后更新其为style attributes

// querySelector can use CSS selectors to find the element in the document
// note: this is assuming there is only 1 element on page with this class
var myDiv = document.querySelector('.class1');
// Style properties generally match CSS but camel cased
myDiv.style.backgroundImage = 'url("https://hello.com/an-other-image.jpg")';

您可能需要考虑添加id,在这种情况下,您可以使用ID选择器或document.getElementById

如果要更新多个元素,则可以使用document.querySelectorAll,它会返回匹配的数组,您可以循环进行匹配和更改。

function changeToAnotherBgImage(element) {
    element.style.backgroundImage = 'url("https://hello.com/an-other-image.jpg")';
}
// Plenty of alternate ways of writing, arrow function may be appropriate
document.querySelectorAll('.class1').forEach(changeToAnotherBgImage);

答案 2 :(得分:0)

您可以这样做:

const eleDiv = document.querySelector('。class')。style.background =“ url('your imge')no-repeat”;