代码之家  ›  专栏  ›  技术社区  ›  roflwaffle

jquery css修饰符,使用javascript变量

  •  1
  • roflwaffle  · 技术社区  · 15 年前

    我有一行jquery:

    $("#colorimage").css('background','url(images/bw.jpg)');
    

    第一个问题:当背景图像通过jquery用css设置时,它的工作方式是从哪里查找图像文件夹?

    第二个问题:有没有办法在第二个参数中插入一个javascript变量?我在JS变量中存储了一个基URL,但是这样做:

    $("#colorimage").css('background','url(' +  baseurl + 'images/bw.jpg)');
    

    不起作用。

    编辑: baseurl是一个javascript变量,现在它是 http://localhost/test/ 但它会改变,这就是为什么我要使用一个变量。

    编辑2: 这是一个路径问题,谢谢你们的回答

    3 回复  |  直到 15 年前
        1
  •  2
  •   Damovisa    15 年前

    问题1: jquery将背景图像的css设置为“url(images/bw.jpg)”,与直接更改css的方式完全相同。换句话说,如果它在一个CSS文件中,它将与该CSS文件相关。如果它是内联的,它将相对于页面。

    问题2: 看看Nickf的答案——唯一不起作用的原因是它走错了路。

    编辑:尝试检查baseurl变量(firebug甚至 alert() )我不明白为什么如果这条路不指向错误的地方,它就不起作用。

        2
  •  2
  •   nickf    15 年前

    它将从应用它的文件的位置获取URL,因此如果您的页面是 http://mysite.com/index.html ,它将在 http://mysite.com/images/bw.jpg

    尝试通过在开始处加斜线使baseurl成为绝对的,或者使用完整的url

    baseurl = "/mySubFolder";
    baseurl = "http://mysite.com/mySubFolder";
    
        3
  •  0
  •   Darryl Hein IrishChieftain    12 年前

    您也可以尝试:

    $("#colorimage").css('background-image','url(' +  baseurl + 'images/bw.jpg)');