我试图在使用jquery点击时更改输入按钮的背景但是对于我的生活,无法找出使它工作的相对路径。
js文件位于root / js文件夹中 css文件位于root / css文件夹中
我的代码如下所示:
jQuery($button).css('background',"url(../images/updating_button.gif)");
但这只是不起作用......它无法找到具有该路径的图像。如果我使用绝对路径它显然有效,但我真的需要它是相对的。
我尝试过所有我知道的组合:
/images/updating_button.gif
..images / updating_button.gif
图片/ updating_button.gif
updating_button.gif
答案 0 :(得分:3)
如果URL是静态的,您可以声明具有背景的类并保持相对路径。
在你的CSS中:
.updating { background: url(../images/updating_button.gif); }
在你的JS中:
jQuery($button).addClass('updating');
答案 1 :(得分:1)
您知道任何内联样式中的路径(无论是否使用JS设置)都将相对于当前HTML文档(浏览器URL栏上的URL),而不是任何其他文件,对吧?
为什么要避免使用绝对(或域相关)URL?
答案 2 :(得分:0)
我希望我能为你测试一下,但过去我的url属性有些问题;在url()
中添加单引号已被证明是最可靠的相对路径。
jQuery($button).css('background',"url('../images/updating_button.gif')");
此外,您的文件结构是什么样的?
答案 3 :(得分:0)
以下代码可能对您有用:
jquery("button").css("background-image","url(menubar/ajax-loader.gif)");