JS获取WebView的URL 以及 document.URL 和 windows.location.href 的区别
分类:Javascript| 发布:佚名| 查看: | 发表时间:2014/5/30
问题: js获取webview的url地址用什么方法?
方法一: document.URL
方法二: create一个空a,取href
IE6下修改domain,location.href会报错。所以jq源码里用a做了兼容
// #8138, IE may throw an exception when accessing
// a field from window.location if document.domain has been set
try {
ajaxLocation = location.href;
} catch( e ) {
// Use the href attribute of an A element
// since IE will modify it given document.location
ajaxLocation = document.createElement( "a" );
ajaxLocation.href = "";
ajaxLocation = ajaxLocation.href;
}
href 本身就会补全的.
/应该取到的不包括path和query
href 直接设置为""就好了
================================================
问题:document.URL 和 windows.location.href 的区别
document 表示的是一个文档对象,windows 表示一个窗口对象。
一个窗口下面可以有很多的document对象。每个document 都有 一个URL。
但是,这不是所有的区别。当你ctrl + F5 一个链接 http://camnpr.com/#param
打印 alert(document.URL ); 和 alert(windows.location.href);
发现,这两个的值不一样,
document.URL : http://camnpr.com/
windows.location.href :http://camnpr.com/#param
所以,如果要用 fragment 进行相应的处理的话,最好是用 windows.location.href
否则会出现很奇怪的错误。