我在页面mainpage.aspx“中我有这个代码:
<a rel="facebox" href="destination.htm?path=blabla">mainpage</a>
我使用facebox()加载destination.htm
问题是在我的destination.htm,当我试图点击警报(window.location.href)时,我得到的是mainpage.aspx而不是destination.htm.why?我想要做的就是从页面读取路径以获取查询字符串(但我得到了错误的路径)。
非常感谢
答案 0 :(得分:2)
这是因为facebox实际上并没有将浏览器重定向到该页面,而是通过ajax获取并将其注入到同一页面上的facebox div中。
您可以尝试抓取锚点的href属性,可能类似于:
var lastVisited = null;
var lastVisitedQS = null;
$("a[rel='facebox']").facebox()
.click(function() {
lastVisited = this.href;
// you can extract the query string like this
var a = document.createElement('a');
a.href = lastVisited;
lastVisitedQS = a.search; // should give path=blabla
});
然后在destination.htm
执行:
alert(lastVisited);
alert(lastVisitedQS);
希望有所帮助!
答案 1 :(得分:0)
您可以使用window.location.hostname获取主机URL,使用window.location.pathname获取虚拟目录+页面,使用window.location.search获取URL的查询字符串部分