2

我正在尝试使用咖啡脚本和 jquery 设置 div 的背景图像。我从表单中的 DOM 中的数据源获取图像 url /images/album_image1.jpg

但是,当我使用:

$('.selector').css({'backgroundImage', "url(#{image_url}"})

CoffeeScript/jQuery 生成一个带有主机的 URL:

url(http://host.com/images/album_image1.jpg)

此外,Firefox 会将 URL 括在引号中,而 Chrome 不会引用 URL。

见这里:JSBin

我想得到结果url(/images/album_image1.jpg),即没有主机部分和引号。我希望得到后一个结果,以便通过我使用 Jasmine 的测试。

4

1 回答 1

0

好吧,因为您是 javascipt,所以您希望输出文本'+something+'

 var image_url = $('img').data('img');
 image_url = str.split(".com"); //split returns an array of everything after the regex: .com
 image_url = image_url[1];
 $('.selector').css('backgroundImage', "url("+image_url+")");

编辑

 So if you want to remove the leading url from the returned string you would use split:

 var str = 'http://jsbin.com/images/image_album1.jpg'
 str = 
 image_url = str.split(".com"); //split returns an array of everything after the regex: .com
 str[1]; ///images/image_album1.jpg

希望这可以帮助?但我也更新了上面的内容,所以它对你的情况很有帮助。

于 2013-03-20T16:19:12.363 回答