1. 浏览器定位和导航:
(1). window.location === document.location;
(2). Location对象的属性:
href:url的完整文本;
protocol, host, hostname,port,pathname,search属性属于url的分解属性;
hash,search:返回问号之后的部分(嵌入参数);
工具函数, 提取参数:
function urlArgs() {
var args = {};
var query = location.search.substing(1);
var pairs = query.split("&");
for (var i = 0; i < pairs.length; i++) {
if (pos == -1) continue;
var name = pairs[i].substring(0, pos);
var value = pairs[i].substring(pos+1);
value = decodeURIComponent(value);
args[name] = value;
}
return args;
};
(3). Location对象的方法:
a. assign()方法和replace()方法,使窗口载入新的url的文档,参数是一个相对目录,其中assign会记录历史记录。
location.replace("staticpage.html");
b. reload(): 重新载入文档。
c. 直接给location以及location.search赋值:
//跳转到文档顶部
location = "#top";
//载入下个页面
location = "page2.html";
location.search = "?page=2";
2.浏览历史:
window.histroy的back和forward方法用于后退和前进,go方法通过传入正负整型来跳转。
3.Navigator对象:
window.navigator属性描述浏览器厂商的版本信息。
//使用userAgent进行浏览器嗅探
var browser = (function() {
var s = navigator.userAgent.toLowerCase();
var match = /(webkit)[ \/]([\w.]+)/.exec(s) ||
/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(s) ||
/(msie) ([\w.]+)/.exec(s) ||
!/compatible/.test(s) && /(mozilla)(?:.*? rv:([\w.]+))?/.exec(s) ||
[];
return {name: match[1] || "" version: match[2] || "0"};
}());
3.Screen对象:
属性width和height指定以像素单位的窗口大小,availWidth和Height指定实际可用的显示大小,排除诸如任务栏占用的空间,colorDepth指定显示的BPP值,如16, 24, 32