我有这行jQuery:
$("#colorimage").css('background','url(images/bw.jpg)');
第一个问题:这是有效的方式,当通过jQuery使用CSS设置背景图片时,从哪里查找images文件夹?
第二个问题:有没有办法可以在第二个参数中插入Javascript变量?我有一个基本网址存储在一个js变量中,但做这样的事情:
$("#colorimage").css('background','url(' + baseurl + 'images/bw.jpg)');
不起作用。
修改 baseurl是一个Javascript变量,现在它是http://localhost/test/但它会改变,这就是我想使用变量的原因。
编辑2:这是一个路径问题,谢谢你们的回答
答案 0 :(得分:2)
它将从应用该文件的文件位置获取该网址,因此如果您的网页为http://mysite.com/index.html
,则会查看http://mysite.com/images/bw.jpg
尝试通过在开头添加斜杠来使您的baseurl绝对,或使用完整的URL
baseurl = "/mySubFolder";
baseurl = "http://mysite.com/mySubFolder";
答案 1 :(得分:2)
问题1: jQuery会将背景图像的css设置为'url(images / bw.jpg)',就像直接更改css一样。换句话说,如果它在css文件中,它将与该css文件相关。如果它是内联的,它将相对于页面。
问题2:看看nickf的答案 - 唯一不起作用的原因是它不是正确的道路。
编辑:尝试检查baseurl变量的内容(firebug甚至alert()
)。除非路径指向错误的位置,否则我无法理解为什么这不起作用。
答案 2 :(得分:0)
您也可以尝试:
$("#colorimage").css('background-image','url(' + baseurl + 'images/bw.jpg)');