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");
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