《JavaScript权威指南》——Window对象
2016-06-28 16:44
417 查看
1.计时器。
setTimeout()和setInterval()用来注册指定的时间之后单次或重复调用的函数。前者是在指定毫秒之后运行一次,而后者是在指定毫秒数的间隔里重复调用。
clearTimeout()和clearInterval()分别对应以上两种方法返回的值,传递给对应函数,用户取消函数执行。
Window对象的location属性引用的是Location对象,表示该窗口中当前显示的文档的URL。
Document对象的location属性也引用的是Location对象。Location对象会做出相应的改变。
window.location ===document.location //返回true
Document对象的URL属性,是文档首次载入后保存该文档的URL静态字符串,不会发生改变。
解析URL Lcation对象的href属性包含URL的完整文本。同时Location对象的其他属性——protocol,host,hostname,port,pathname。search,成为“URL分解”属性
载入新的文档
Location对象的assign()和replace()都可以使窗口载入并显示你指定的URL中的文档。但replace()在载入新的文档之前会从游览历史中把当前文档删除。
检测到用户的游览器不知处某些特性来显示功能齐全版本,可以用location.replace()来载入一个新的静态文档。
Location对象的reload()方法,可以让游览器重新载入当前文档
直接把新的URL赋给location属性,来实现页面转跳
3.游览历史
Window对象的history属性引用的是该窗口的History对象。
History对象是用来把窗口的游览历史用文档和文档状态列表的形式表示。
History对象的的back()和forward()方法就是转跳到前一个文档或者是后一个文档,或者通过go()方法来跳到任意页面。
4.游览器和屏幕信息
Window对象的navigator和screen属性,分别引用了Navigator和Screen对象。
Navigator对象包含游览器的厂商和版本信息。
Screen对象提供有关窗口显示的大小和可用的颜色数量。
5.对话框
alert()
confirm()
prompt()
这些对话框显示的都是纯文本,而不是HTML格式的文本,可能会产生阻塞。
6.错误处理
window对象的onerror属性是一个事件处理程序,处理函数的调用通过三个字符串参数:
第一个参数:描述错误信息
第二个参数:存放引发错误的javascript代码所在文档的url
第三个参数:文档发生错误的行数
7.作为window对象属性的文档元素
如果在html文档中用id属性来为元素命名,并且window对象没有该属性,id的值会成为window对象赋予属性的名字,它们的值指向表示文档元素的HTMLElement对象。
8.多窗口和窗体
由<iframe>所创建的嵌套游览上下文是用它自己的window对象。
window对象的open()方法:第一个参数是在新窗口显示文档的url,第二个参数是新打开的窗口的名字,如果省略此参数,使用指定名字“_blank”,第三个参数是一个可选的的以逗号分隔的列表,包含大小和各种属性,来表明新窗口是如何打开的。(第三个参数是非标准的。)
open()的返回值代表命名或新创建的窗口的window对象。var w = window.open();
w.alert("http://www.baidu.com");
w.location = "http://www.baidu.com";
创建的窗口中,opener属性引用的是打开它的脚本的window对象。
(为了避免混淆window对象的close()方法和document对象的close()对象,必须显示使用——window.close())
窗体之间的关系——任何窗口或窗体中的javascript代码都可以将自己的窗口引用为window对象或self,窗体可以用parent属性引用包含它的窗口或窗体的window对象。
若窗体为顶级窗口,parent == self,返回true。可以用top属性来引用窗口本身。
<iframe id="f1">,表明该iframe的元素对象 var iframeElement = document.getElementById("f1");
<iframe>元素有contentWindow属性 var childFrame = document.getElementById("f1").contentWindow;
每个Window对象都有一个frames属性,它引用自身包含的窗口或窗体的子窗体。frames属性引用的是类数组对象,数组里的元素是window对象,通过数字或窗体名进行索引。
每个窗口和窗体都是它自身的JavaScript执行上下文,以window作为全局对象。
setTimeout()和setInterval()用来注册指定的时间之后单次或重复调用的函数。前者是在指定毫秒之后运行一次,而后者是在指定毫秒数的间隔里重复调用。
clearTimeout()和clearInterval()分别对应以上两种方法返回的值,传递给对应函数,用户取消函数执行。
/* * 定时器应用函数 * 安排函数f()在未来的调用模式 * 在等待若干秒之后调用f() * */ function invoke(f,start,interval,end) { if(!start) strat = 0; //arguments由实参数量组成的类似于数组对象 if(arguments.length <=2) { setTimeout(f,strart); } else { setTimeout(repeat,start); function repeat() { var h = setInterval(f,interval); //end毫秒后停止调用,前提end已经定义 if(end) setTimeout(function() {clearInterval(h);},end) } } }2.游览器定位和导航
Window对象的location属性引用的是Location对象,表示该窗口中当前显示的文档的URL。
Document对象的location属性也引用的是Location对象。Location对象会做出相应的改变。
window.location ===document.location //返回true
Document对象的URL属性,是文档首次载入后保存该文档的URL静态字符串,不会发生改变。
解析URL Lcation对象的href属性包含URL的完整文本。同时Location对象的其他属性——protocol,host,hostname,port,pathname。search,成为“URL分解”属性
/* * 这个函数用来解析url的查询串中name=value参数对 * 将name=value对存储在一个对象的属性中,并返回这个对象 * */ function urlArgs() { var args = {}; var query = location.search.substring(1); //split() 方法用于把一个字符串分割成字符串数组。 var pairs = query.split("&"); for(var i=0; i<pairs.length; i++){ //indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。 // 如果要检索的字符串值没有出现,则该方法返回 -1。 var pos = pairs[i].indexOf('='); if(pos==-1) continue; //stringObject.substring(start,stop) var name = pairs[i].substring(0,pos); var value = pairs[i].substring(pos+1); value = decodeURIComponent(value); args[name] = value } return args; } //使用这个方法 var args = urlArgs(); console.log(args); var q =args.q || "";// var n = args.n ? parseInt(args.n):10;
载入新的文档
Location对象的assign()和replace()都可以使窗口载入并显示你指定的URL中的文档。但replace()在载入新的文档之前会从游览历史中把当前文档删除。
检测到用户的游览器不知处某些特性来显示功能齐全版本,可以用location.replace()来载入一个新的静态文档。
/* * 如果游览器不支持XMLHttpRequest对象 * 则将其重新定向到一个不需要Ajax的静态页面 */ if (!XMLHttpRequest) location.replace("staticpage.heml");//相对URL,根据当前目录来解析
Location对象的reload()方法,可以让游览器重新载入当前文档
直接把新的URL赋给location属性,来实现页面转跳
3.游览历史
Window对象的history属性引用的是该窗口的History对象。
History对象是用来把窗口的游览历史用文档和文档状态列表的形式表示。
History对象的的back()和forward()方法就是转跳到前一个文档或者是后一个文档,或者通过go()方法来跳到任意页面。
4.游览器和屏幕信息
Window对象的navigator和screen属性,分别引用了Navigator和Screen对象。
Navigator对象包含游览器的厂商和版本信息。
Screen对象提供有关窗口显示的大小和可用的颜色数量。
5.对话框
alert()
confirm()
prompt()
这些对话框显示的都是纯文本,而不是HTML格式的文本,可能会产生阻塞。
6.错误处理
window对象的onerror属性是一个事件处理程序,处理函数的调用通过三个字符串参数:
第一个参数:描述错误信息
第二个参数:存放引发错误的javascript代码所在文档的url
第三个参数:文档发生错误的行数
7.作为window对象属性的文档元素
如果在html文档中用id属性来为元素命名,并且window对象没有该属性,id的值会成为window对象赋予属性的名字,它们的值指向表示文档元素的HTMLElement对象。
8.多窗口和窗体
由<iframe>所创建的嵌套游览上下文是用它自己的window对象。
window对象的open()方法:第一个参数是在新窗口显示文档的url,第二个参数是新打开的窗口的名字,如果省略此参数,使用指定名字“_blank”,第三个参数是一个可选的的以逗号分隔的列表,包含大小和各种属性,来表明新窗口是如何打开的。(第三个参数是非标准的。)
open()的返回值代表命名或新创建的窗口的window对象。var w = window.open();
w.alert("http://www.baidu.com");
w.location = "http://www.baidu.com";
w.close();
创建的窗口中,opener属性引用的是打开它的脚本的window对象。
(为了避免混淆window对象的close()方法和document对象的close()对象,必须显示使用——window.close())
窗体之间的关系——任何窗口或窗体中的javascript代码都可以将自己的窗口引用为window对象或self,窗体可以用parent属性引用包含它的窗口或窗体的window对象。
若窗体为顶级窗口,parent == self,返回true。可以用top属性来引用窗口本身。
<iframe id="f1">,表明该iframe的元素对象 var iframeElement = document.getElementById("f1");
<iframe>元素有contentWindow属性 var childFrame = document.getElementById("f1").contentWindow;
每个Window对象都有一个frames属性,它引用自身包含的窗口或窗体的子窗体。frames属性引用的是类数组对象,数组里的元素是window对象,通过数字或窗体名进行索引。
每个窗口和窗体都是它自身的JavaScript执行上下文,以window作为全局对象。
相关文章推荐
- js字符串的截取,替换
- jsf中的ajaxSingle
- js获得input的实时输入值
- Jsp页面分页技术实现文档
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- 理解和使用 JavaScript 中的回调函数
- JS预解析,作用域
- MulLine.js 使用说明