【问题标题】:jQuery css modifier, use a javascript variablejQuery css 修饰符,使用 javascript 变量
【发布时间】:2012-11-05 10:25:12
【问题描述】:

我有这行 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:这是一个路径问题,谢谢大家的回答

【问题讨论】:

    标签: jquery


    【解决方案1】:

    问题 1: jQuery 会将背景图片的 css 设置为 'url(images/bw.jpg)',就像您直接更改 css 一样。换句话说,如果它在一个 css 文件中,它将与该 css 文件相关。如果它是内联的,它将与页面相关。

    问题 2: 看看 nickf 的回答 - 唯一不起作用的原因是它不是正确的路径。

    编辑:尝试检查 baseurl 变量的内容(萤火虫甚至alert())。除非路径指向错误的位置,否则我不明白为什么这不起作用。

    【讨论】:

      【解决方案2】:

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

      尝试通过在开头添加一个斜杠来使您的 baseurl 绝对,或者使用完整的 URL

      baseurl = "/mySubFolder";
      baseurl = "http://mysite.com/mySubFolder";
      

      【讨论】:

      • 吹毛求疵,但对于他的例子,尾部的正斜杠是必要的。无论如何+1 :)
      【解决方案3】:

      你也可以试试:

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

      【讨论】:

      • 您的意思是“背景图片”而不是“背景网址”吗? ;)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-13
      • 2013-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多