深入学习JavaScript中的bom
更新时间:2019年05月27日 16:12:01 作者:___mouM
Bom:浏览器对象模型提供了独立于内容而与浏览器窗口进行交互的对象。描述了与浏览器进行交互的方法和接口,可以对浏览器窗口进行访问和操作,下面我们来一起学习一下吧
BOM(Broswer Object Model)
凡是 window 的属性和方法,均可以省略“window.”
方法:
框窗
1.警告框
window.alert("msg");
2.确认框
window.confirm("msg");
3.询问框
window.prompt("msg","defaulvalue")
页面
1.打开一个窗口
window.open()
2.在子窗口中使用,表示父窗口的window对象
window.opener
window.opener.fatherSayHello(); 调用父窗口的方法 window.opener.a
3.关闭当前窗口
window.close()
window.close(); 关闭当前 window.opener.close(); 关闭父窗口
定时任务
1.定时任务
var taskid = window.setTimeout(function,ms); window.setTimeout("alert('hello!')", 5000);
2.间隔执行任务
var taskid = window.setInteval(function,ms);
3.清除定时任务
window.clearTimeout(taskid);
4.清除间隔执行任务
window.clearInteval(taskid);
打印屏幕
//长*宽 console.log(screen.width + "*" + screen.height)
后退
window.history.back();
前进
window.history.forward();
刷新
window.location.reload();//刷新 window.location.href = window.location.href;//刷新
Go 前进(x)步,后退(x)步,刷新(0),
window.history.go(x)
链接
window.location.href = http://www.baidu.com;
用户代理 浏览器内核
console.log(window.navigator.userAgent)
框窗
//凡是window的属性和方法,均可以省略“window.” <script type="application/javascript"> // 警告框 function testAlert(){ var result=window.alert("这是一个警告框") console.log(result); } // confirm 确认框 function testConfirm(){ var result =window.confirm("你确认要离开了吗?"); if(result){ alert("欢迎下次再来!") }else{ alert("那你在逛逛吧!") } consol.log(result); } // prompt 询问框 function testPrompt(){ var result = window.prompt("请输入U盾密码","例如:123456"); console.log(result); } </script> <body> <button onclick="testAlert();">testAlert</button> <button onclick="testConfirm();">testConfirm</button> <button onclick="testPrompt();">testPrompt</button> </body>
页面
//子页面 <script type="application/javascript"> function sayHello(){ alert("hello world") } //打开一个窗口 function callFatherMethod(){ window.opener.fatherSayHello(); window.opener.a } //关闭本窗口 function testClose(){ window.close(); } //关闭父窗口 function testFatherClose(){ window.opener.close(); } </script> <body> <button onclick="callFatherMethod()">调用父窗口的方法</button> <button onclick="testClose()">关闭本窗口</button> <button onclick="testFatherClose()">关闭父窗口</button> </body> //父页面 <script type="application/javascript"> var a = 10; window.onload = function(){ console.log(window); console.log("11111111111") } //打开一个新窗口 function testOpen(){ var sonwindow = window.open("son.html","aaa","height=300,width=500,top=50,left=50,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no") //子窗口的window对象 console.log(sonwindow); } function fatherSayHello(){ alert("hello son!"); } </script> <body> <button onclick="testOpen();">打开一个新窗口</button> </body>
定时任务
<script type="application/javascript"> function setTime() { // window.setTimeout("alert('hello!')",5000); window.setTimeout(sayHello, 5000); } var sayHello = function () { alert("你好!"); } </script> </head> <body> <button onclick="sayHello();">调用sayHello</button> <button onclick="setTime();">调用setTime</button>
间隔执行任务
<script type="application/javascript"> /* window.onload = function(){ window.setTimeout(closeSelf, 1000); } function closeSelf() { var secval = document.getElementById("sec").innerHTML; var secint = parseInt(secval); document.getElementById("sec").innerHTML = --secint; if(secint == 0){ window.close(); } window.setTimeout(closeSelf, 1000); } */ var taskid = 0; window.onload = function(){ //间隔执行任务,间隔 1000ms 执行一次 taskid = window.setInterval(closeSelf, 1000); } function closeSelf() { //获取 10s var secval = document.getElementById("sec").innerHTML; console.log(secval); var secint = parseInt(secval); console.log(secint); //10s 减减 document.getElementById("sec").innerHTML = --secint; if(secint == 0){ window.close(); } } // 4.清除间隔执行任务 暂停 function stopTask(){ window.clearInterval(taskid); } //继续计时 function goonTask(){ taskid = window.setInterval(closeSelf, 1000); console.log(taskid) } </script> <body> 付款成功,页面将在<span id="sec">10</span>s后关闭。 <button onclick="stopTask()">稍等,待会我会自己关闭</button> <button onclick="goonTask()">继续读秒,关闭窗口</button> </body>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
javascript prototype原型详解(比较基础)
prototype原型是javascript中特别重要的概念,属于必须要掌握,如果没有良好的掌握的话,进一步用好或者学好js基本是不可能的实现的事情,并且此概念稍有难度,可能对于初次接触的朋友来说有点困难,下面就通过代码实例简单介绍一下prototype原型的用法2016-12-12JavaScript 学习笔记(九)call和apply方法
两者实现的功能是完全一样的,只是参数传递方式不一样,call是将各个参数以逗号(,)隔开,而apply是将所有参数组成一个数组进行传递。2010-01-01
最新评论