注意
- 敲代码时一定要注意,
<script>中用到的属性值要加引号!(style中不用) 
Window对象的方法
- window 对象表示浏览器中打开的窗口。
 
- 注意:  弹框中的文本需要 换行 使用 
\n 
alert()消息+确认按钮的警告框
- 语法:
window.alert("content") 
- 功能:显示带有一段消息和一个确认按钮的警告框
 
confirm()消息+OK+取消按钮的对话框
- 语法:
window.confirm(“你想要显示的提示消息") 
- 功能:显示一个带有指定消息和OK及取消按钮的对话
 
- 返回值 (布尔型):  
- 如果用户点击确定按钮,则confirm()返回true  
 
- 如果用户点击取消按钮,则confirm()返回false
 
 
- 举例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
   | <body> 	<div id="box"> 		<span>iphone6s</span> 		<input type="button" value="删除" id="btn"> 	</div> 	<script>                var btn=document.getElementById("btn");        btn.onclick=function(){        	           	   var result=window.confirm("您确定要删除吗?删除之后该信息\n将不可恢复!");        	   if(result){               document.getElementById("box").style.display="none";        	   }        }     </script> </body>
   | 
 
prompt()消息+输入框+OK+取消按钮的对话框
- 语法:
window.prompt("text,defaultText")
- text:要在对话框中显示的纯文本(而不是HTML格式的文本)  
 
- defaultText:默认的输入文本
 
 
- 返回值 (字符串):  
- 如果用户单击提示框的取消按钮,则返回null  
 
- 如果用户单击确认按钮,则返回输入字段当前显示的文本
 
 
- 举例:
刷新页面时就会弹出提示框,点击“取消”发现打印出null,点击“确认”,发现返回默认的输入文本”天蝎座”,输入“金牛座”再点击“确认”,返回的是“金牛座”。1 2 3 4 5 6
   | <body>     <script>         var message=prompt("请输入您的星座","天蝎座");         console.log(message); 	</script> </body>
   | 
 
编程练习
点击页面上的“删除”按钮,弹出确认框
(1)当点击确认框上的“确定“时,按钮上的字变为红色;
(2)当点击确认框上的“取消“时,按钮上的字变为绿色。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
   | <body>     <input type="button" value="删除" id="btn">     <script type="text/javascript">                  var btn=document.getElementById("btn");                  btn.onclick=function(){                          var result=window.confirm("确定要删除吗?")             if(result){                                  btn.style.color="red";             }else{                 btn.style.color="green";             }         }     </script> </body>
   | 
 
地址:E:\慕课网 前端小白入门系列课程完整版\JavaScript\7.javascriptBOM对象\test1.html
open()打开新的浏览器窗口或查找一个已命名的窗口
- 语法:
window.open(pageURL,name,parameters)
- pageURL:子窗口路径(同一目录下可以直接写文件名称)。  
 
- name:子窗口句柄。(name声明了新窗口的名称,方便后期通过name对子窗口进行引用)  
 
- parameters:窗口参数(各参数用逗号分隔)
 
 
- 功能:打开一个新的浏览器窗口或查找一个已命名的窗口
 
- 窗口参数包括:  
- width:窗口宽度  
 
- height:窗口高度  
 
- left:窗口X轴坐标   
 
- top:窗口Y轴坐标  
 
- toolbar:是否显示浏览器的工具栏  
 
- menubar:是否显示菜单栏  
 
- scrollbars:是否显示滚动条  
 
- location:是否显示地址字段  
 
- status:是否添加状态栏
 
 
close()关闭浏览器窗口
- 语法:
window.close() 
- 功能:关闭浏览器窗口
 
合并举例
同目录下两个页面
1 2 3 4 5 6 7 8 9 10 11 12 13 14
   | <body> 	<input type="button" value="退 出" id="quit"> 	<script>        window.onload = function(){        	          	  window.open("newwindow.html","width=400,height=200,left=0,top=0,toolbar=no,menubar=no,scrollbars=no,location=no,status=no");        	  var quit = document.getElementById("quit");        	          	  quit.onclick = function(){        	  	  window.close();        	  }        } 	</script> </body>
   | 
第二个页面(newwindow.html)
1 2 3
   | <body> 	<h1>hello window.open</h1> </body>
   | 
超时调用与间歇调用
注意
- 首先要明确JavaScript是单线程语言,单线程就是所执行的代码必须按照顺序。
 
- 【1秒等于1000毫秒】
 
setTimeout()超时调用
- 语法:
setTimeout(code,millisec)
- code:要调用的函数或要执行的JavaScript代码串
【注意:并不建议写代码串,最好是用匿名函数或者自定义函数】   
- millisec:在执行代码前需等待的毫秒数
 
 
- 功能:在指定的毫秒数后调用函数或计算表达式  ,即延长多少时间以后再发生这个事。
 
- 说明:setTimeout()只执行code一次。如果要多次调用,请使用setlnterval()或者让code自身再次调用setTimeout()【例子在下面】
 
使用超时调用实现多次调用的例子
让setTimeout()自身再次调用setTimeout()实现间隔一秒输出数字1-10:
- 函数inCreamentNum调用时先打印num(1)
 
- 递增(num=2),然后判断是否小于max(10)
 
- 如果小于则再次调用setTimeout(),输出num(2)
 
- 一直到num为11时清除延时调用。
 
- 补充:timer之所以给null而不是空字符是因为超时调用的id是个对象,建议给null来释放内存是因为空字符就指定了这个对象实例的值是一个长度为0的空字符串。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
   | <body>     <script>         var num=1,             max=10,             timer=null;                 function inCreamentNum(){            console.log(num);               num++;                  if(num<=max){               setTimeout(inCreamentNum,1000);            }else{            	  clearTimeout(timer);            }        }        timer=setTimeout(inCreamentNum,1000); 	</script> </body>
   | 
 
clearTimeout()清除(取消)超时调用
- SetTimeout方法返回一个ID值,我们可以通过它取消超时调用。
 
- 语法:
clearTimeout(id_of settimeout)
- id of settimeout:由setTimeout()返回的ID值,该值标识要取消的延迟执行代码块。
 
 
- 功能:取消由setTimeout()方法设置的timeout
 
合并举例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
   | <body>    <script>       
               var fnCall = function () {          alert("world");       }              
               var timeout1 = setTimeout(function () {          alert("hello");       }, 2000)                     clearTimeout(timeout1);    </script> </body>
   | 
 
setinterval()间歇调用
- 语法:
setinterval(code,millisec)
- code:要调用的函数或要执行的代码串。  
 
- millisec:周期性执行或调用code之间的时间间隔,以毫秒计
 
 
- 功能:每隔指定的时间执行一次代码
 
clearIntervall()清除间歇调用
- 语法:
clearIntervall(id of setinterval)
- id_of_setinterval:由setinterval()返回的ID值
 
 
- 功能:取消由setInterval()方法设置的interval
 
合并举例
打印10次”您好”:
- 利用间歇调用打印”您好”
 
- 延时调用使得10秒之后执行“清除间歇调用”停止打印
1 2 3 4 5 6 7 8 9 10 11 12 13
   | <body> 	<script>                 var intervalId=setInterval(function(){            console.log("您好");         },1000)
                   setTimeout(function(){             clearInterval(intervalId);         },10000);     </script> </body>
   | 
 
间隔1秒输出1-10: 
- 利用间歇调用与递增打印
 
- 每一次递增后都判断是否到达10,到达则清除间歇调用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
   | <body> 	<script>         var num=1,             max=10,             timer=null;        // 每隔1秒针num递增一次,直到num的值等于max清除       timer=setInterval(function(){            console.log(num);            num++;            if(num>max){               clearInterval(timer);            }        },1000)     </script> </body>
   |