积极答复者
再问一个关于绝对路径的问题

问题
-
在调用lightbox的时候,引用的js的里面有这样一段代码。
LightboxOptions = Object.extend({
fileLoadingImage: 'lightbox/images/loading.gif',
fileBottomNavCloseImage: 'lightbox/images/closelabel.gif',
...
})
我打算把上面的相对路径改为绝对路径,试了一下,实现是实现了,但是感觉不好。
改后的代码:
fileLoadingImage: document.location.href.replace(document.location.pathname, "/") + document.location.pathname.split("/")[1] + '/lightbox/images/loading.gif',
fileBottomNavCloseImage: document.location.href.replace(document.location.pathname, "/") + document.location.pathname.split("/")[1] + '/lightbox/images/closelabel.gif',
大家有什么好的方法吗?
答案
-
简单的办法:
在最前面定义一个根路径
var SiteRoot = "<%=Request.ApplicationPath=="/"?"":Request.ApplicationPath%>";
然后写
LightboxOptions = Object.extend({
fileLoadingImage: SiteRoot + 'lightbox/images/loading.gif',
fileBottomNavCloseImage: SiteRoot + 'lightbox/images/closelabel.gif',
...
})
这样,以后想换成什么就直接在SiteRoot上做文章即可
【孟子E章】- 已标记为答案 Cat ChenModerator 2009年10月25日 14:37
全部回复
-
将引用的文件更改为aspx的 如 lightbox.js.aspx
在顶部增加一行 <%@ Page language="c#" ContentType="text/javascript" AutoEventWireup="false"%>
然后用<%=Request.ApplicationPath%>/lightbox/images/loading.gif的方式
Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!http://blog.tanging.net -
将引用的文件更改为aspx的 如 lightbox.js.aspx
在顶部增加一行 <%@ Page language="c#" ContentType="text/javascript" AutoEventWireup="false"%>
然后用<%=Request.ApplicationPath%>/lightbox/images/loading.gif的方式
Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!http://blog.tanging.net
好像比较复杂。。。没有更简单的方法吗? -
简单的办法:
在最前面定义一个根路径
var SiteRoot = "<%=Request.ApplicationPath=="/"?"":Request.ApplicationPath%>";
然后写
LightboxOptions = Object.extend({
fileLoadingImage: SiteRoot + 'lightbox/images/loading.gif',
fileBottomNavCloseImage: SiteRoot + 'lightbox/images/closelabel.gif',
...
})
这样,以后想换成什么就直接在SiteRoot上做文章即可
【孟子E章】- 已标记为答案 Cat ChenModerator 2009年10月25日 14:37
-
简单的办法:
在最前面定义一个根路径
var SiteRoot = "<%=Request.ApplicationPath=="/"?"":Request.ApplicationPath%>";
然后写
LightboxOptions = Object.extend({
fileLoadingImage: SiteRoot + 'lightbox/images/loading.gif',
fileBottomNavCloseImage: SiteRoot + 'lightbox/images/closelabel.gif',
...
})
这样,以后想换成什么就直接在SiteRoot上做文章即可
【孟子E章】
var SiteRoot = "<%=Request.ApplicationPath=="/"?"":Request.ApplicationPath%>";
这个是写在哪里?JS文件里还是ASPX文件里? -
简单的办法:
在最前面定义一个根路径
var SiteRoot = "<%=Request.ApplicationPath=="/"?"":Request.ApplicationPath%>";
然后写
LightboxOptions = Object.extend({
fileLoadingImage: SiteRoot + 'lightbox/images/loading.gif',
fileBottomNavCloseImage: SiteRoot + 'lightbox/images/closelabel.gif',
...
})
这样,以后想换成什么就直接在SiteRoot上做文章即可
【孟子E章】
var SiteRoot = "<%=Request.ApplicationPath=="/"?"":Request.ApplicationPath%>";
这个是写在哪里?JS文件里还是ASPX文件里?
写在ASPX的<script>标签里面,也就是用<% %>动态声称一个<script>中的变量值。
Microsoft ASP.NET MVP