在尝试为网页构建一些动态内容时,我遇到了一个奇怪的问题。我做了一些研究,但找不到任何可以帮助我的东西...
这是我的代码,我尝试更改div的背景图像。 背景图像的文件路径存储在一个对象中,该对象作为JSON接收并解析为javascript对象。当我使用filepath变量的内容填充div的innerHTML时,将显示正确的URL。 当我将这个确切的URL写入backgroundImage URL时,会显示正确的图片。 但是当我尝试用变量替换文件路径时,没有任何反应。
var myObj = JSON.parse(this.responseText);
var URL = JSON.stringify(myObj.imageURL);
newbox.style.backgroundImage = "url('myObj.imageURL')";
newbox.innerHTML += myObj.Content;
newbox.innerHTML += myObj.imageURL;
insert.append(newbox);
在我的代码中,您可以看到我还尝试将myObj.imageURL
的值字符串化并将其用作文件路径。但这也不起作用。
编辑:存储在myObj.imagURL中的文件路径如下所示:images / crew.jpg
编辑2:Manuel Otto解决了这个问题:
newbox.style.backgroundImage = "url("+myObj.imageURL+")";
感谢所有建议!
答案 0 :(得分:1)
非常接近,你是;)
(\/\*(?>[^\/\*\*\/]+)*\*\/)
答案 1 :(得分:0)
我认为你的字符串错了。 使用此:
newbox.style.backgroundImage = "url('" + myObj.imageURL + "')";
答案 2 :(得分:0)
这是一个完全有效的代码。
var myObj = {
imageURL: "https://images.unsplash.com/photo-1494249465471-5655b7878482?ixlib=rb-0.3.5&s=997116405ede44d63ddc54f16e2db8ce&auto=format&fit=crop&w=1350&q=80",
Content: "my div content"
}
var URL = JSON.stringify(myObj.imageURL);
var insert = document.getElementById("insert");
var newbox = document.createElement("DIV");
newbox.style.backgroundImage = `url('${myObj.imageURL}')`;
newbox.style.height = "400px";
newbox.innerHTML += myObj.Content;
newbox.innerHTML += myObj.imageURL;
insert.append(newbox);
<div id="insert"></div>