window对象定义了3个人机交互的方法,主要方便对JavaScript代码进行测试。
- alert():确定提示框。该方法包含了一个可选的提示信息参数。如果没有指定参数,则弹出一个空的对话框。
- confirm():选择提示框。由浏览器向用户弹出提示信息,弹出对话框包含两个按钮,分别表示“确定”和“取消”。如果单击“确定”按钮,则该方法会返回一个true;单击“取消”按钮,则返回一个false。
- prompt():输入提示框。
下面的示例演示了如何综合用这3个方法来设计一个人机交互对话。
<script>
var user=prompt('请输入你的用户名:');
if(!!user){
var ok=confirm('你输入的为:\n'+user+'\n请确认。');
if(ok){
alert('欢迎你:\n'+user);
}else{
user=prompt('请重新输入你的用户名:');
alert('欢迎你:\n'+user);
}
}else{
user=prompt('请输入你的用户名');
}
</script>
2.打开和关闭窗口
window.open(URL,name,features.replace)
URL:可选字符串,声明在新窗口中显示网页文档的ULR。如果省略,或者为空,则新窗口就不会显示任何文档。
name:可选字符串,声明新窗口的名称。这个名称可以用作标记<a> 和<form>的target目标值。如果该参数指定了一个已经存在的窗口,那么open方法就不会创建一个新窗口,而只是返回对指定窗口的引用,在这种情况下,features参数将被忽视。
features:可选字符串,声明了新窗口要显示的标准浏览器的特征。如果省略该参数,新窗口将具有所有标准特征。
replace:可选布尔值。
下面的示例演示如何自动弹出一个窗口,然后设置半秒钟之后自动关闭该窗口,同时允许用户单击页面超链接,更换弹出窗口内显示的网页URL。
var url="http://news.baidu.com/";
var features="height=500,width=800,top=100,left=100,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no";
document.write('<a href="http://www.baidu.com/" target="newW">切换到百度首页</a>');
var me=window.open (url,"newW",features);
setTimeout(function(){
if(me.closed){
console.log('创建的窗口已关闭。');
}else{
me.close();
}
},500);
setTimeout()方法能够在指定的时间段后执行特定代码。其具体用法如下:
var o=setTimeout(code,delay);
code表示要延迟执行的字符串型代码
delay表示延迟的时间,单位为毫秒(ms)