核心提示:location对象location 对象是很特别的一个对象,因为它既是window 对象的属性,也是document 对象的属性,换句话说,window.location 和document.loc...
location对象
location 对象是很特别的一个对象,因为它既是window 对象的属性,也是document 对象的属性,换句话说,window.location 和document.location 引用的是同一个对象。
location对象属性
hash: 返回URL中的hash(#号后跟零或多个字符),如果URL
中不包含散列,则返回空字符串。例如:”#contents”。
host:返回服务器名称和端口号(如果有),如:”www.example.com:80”。
hostname:返回不带端口号的服务器名称,例如:”www.wrox.com”
href: 返回当前加载页面的完整URL。
pathname: 返回URL中的目录和(或)文件名。例如:’/data/’>
port: 返回URL中指定的端口号。如果URL中不包含端口号,则
这个属性返回空字符串,例如:“8080”
protocol: 返回页面使用的协议。通常是http:或https:
search: 返回URL的查询字符串。这个字符串以问号开头。例如:“?q=javascript”。
获取查询字符串参数的方法:
function getQueryStringArgs(){ //取得查询字符串并去掉开头的问号 var qs = (location.search.length > 0 ? location.search.substring(1) : ""), //保存数据的对象 args = {}, //取得每一项 items = qs.length ? qs.split("&") : [], //定义每一项 item = null, name = null,//键 value = null,//值 //在for 循环中使用 i = 0, len = items.length; //逐个将每一项添加到args 对象中 for (i=0; i < len; i++){ item = items[i].split("="); name = decodeURIComponent(item[0]); value = decodeURIComponent(item[1]); if (name.length) { args[name] = value; } } return args; } //假设查询字符串是?q=javascript&num=10 var args = getQueryStringArgs(); alert(args["q"]); //"javascript" alert(args["num"]); //"10"
重新加载页面:
如果调用reload()时不传递任何参数,页面就会以最有效的方式重新加载。也就是说,如果页面自上次请求以来并没有改变过,页面就会从浏览器缓存中重新加载。如果要强制从服务器重新加载,则需要像下面这样为该方法传递参数true。
location.reload(); //重新加载(有可能从缓存中加载) location.reload(true); //重新加载(从服务器重新加载)