我尝试使用下面的代码使用JQuery创建div元素,元素正在正确创建,但background-image属性的替换完全被破坏了......
" /"在imagepath_start中已损坏,因此未正确设置背景图像。
imagepath_start = "http://webfact.com/online_static/product-images/book/"
$("<div id = product" + i + "left class = product-cards-left style=background-image:url( " + imagepath_start + obj.image_caption + " > </div>").appendTo('#product' + i)
答案 0 :(得分:2)
使用jQuery创建DOM元素时,建议采用以下方法。正如你所看到的那样,很容易找到一个缺失的撇号或引号,对于长字符串尤其是字符串中的字符串来说非常困难:
imagepath_start = "http://webfact.com/online_static/product-images/book/";
$("<div/>",{id: "product" + i + "left", class: "product-cards-left"})
.css("background-image","url(" + imagepath_start + obj.image_caption + ")")
.appendTo('#product' + i);
答案 1 :(得分:0)
您缺少HTML属性的引号,导致元素呈现错误的原因尝试为属性值添加单引号:
$("<div id='product" + i + "left' class='product-cards-left' style='background-image:url( " + imagepath_start + obj.image_caption + ")'> </div>").appendTo('#product' + i);
你也错过了background-image css
中的右括号我正在考虑你正在构建图像路径。