Android WebView中JavaScript设置backgroundImage不显示问题求助
问题解决:JS动态设置backgroundImage不显示的原因
你的问题出在backgroundImage的赋值语句上——你在URL后面多加了一个分号;,这会导致浏览器把分号当作图片URL的一部分,无法正确识别图片地址。
在通过JavaScript设置DOM元素的style属性时,只需要传入属性的纯值,不需要像CSS样式表那样加结尾的分号。修正后的代码如下:
function enforceTheme() { document.body.style.backgroundColor = theme["bgColor"]; const background = "https://via.placeholder.com/300/09f/fff.png"; document.body.style.backgroundImage = `url(${background})`; // 去掉末尾的分号,用模板字符串更简洁 document.getElementById("upBtn").style.color = theme["upBtnColor"]; document.getElementById("downBtn").style.color = theme["downBtnColor"]; }
补充说明:你用CSS样式表设置时正常,是因为CSS语法要求每条声明结尾加分号,但JS的style属性赋值直接对应属性值,不需要这个分号。
内容的提问来源于stack exchange,提问作者coderGtm
相关产品推荐
相关产品推荐

