JavaScript第八章节BOM
Windows对象
全局作用域
- 全局作用域中声明的变量,函数和方法都会变成windows的属性和方法
窗口关系及框架
- 每个框架都有自己的windows对象
- 可通过windows.frames进行访问
- frames可用frameset包裹
窗口位置
- screenLeft(screenX):窗口相对于屏幕左边
- screenTop(screenY):窗口相对于屏幕上边
- moveTo(x,y):x和y表示新位置的坐标值
- moveBy(x,y):x和y表示水平和垂直方向上的像素数
窗口大小
- outerWidth和outerHeight:返回浏览器窗口本身的尺寸
- innerWidth和innerHeight:返回浏览器除去边框的视图容器大小
- clientWidth和clientHeight:返回浏览器视口尺寸
- resizeTo():接收两个参数浏览器窗口的新宽度和新高度
- resizeBy():接收两个参数,新窗口与原窗口的宽度差和高度差
导航和打开窗口
window.open():
- 第一个参数是要加载的url
- 第二个参数为窗口目标,也可以为 ==_self==,==_parent==, ==_top== 或者 ==_blank==
- 第三个参数为特性字符串及设置新窗口的特性详见高程第200页
- 第四个参数为是否取代原网页在历史记录中的位置
- window.close():关闭新打开的窗口
弹出窗口屏蔽程序
var blocked=false try{ var wroxWin=window.open('http://www.baidu.com',_blank) if(wroxWin==null){ blocked=true } }catch(ex){ blocked=truee } if(blocked){ alert("the popup was blocked!") }
- 间歇调用和超时调用
- setTimeout(function(){},time),time告诉程序,time后把setTimeout放到js队列里去
- 清除setTime:clearTimeout()
- 间歇调用:setInterval(function(){},time)
- 清除间歇调用:clearInterval()
系统对话框
- alert():警告提示框
confirm():二次确认弹框
if(confirm('Are you ok?')){ // true }else{ // false }
prompt():除了有confirm的功能外,还会提供一个文本输入框,prompt()接收两个参数,第一个是要显示给用户的文本提示和文本输入框的默认值
if(prompt('Are you ok?','')){ // true }else{ // false }
- window.print():显示打印对话框
- window.find():显示查找对话框
location对象
- 查询字符串参数:location.search,可查询到url中?到末尾的字符串
位置操作
- location.assign(newUrl)
- location.href:修改url
- location.hash: 修改url后面的#
- location.search:给url传参
- location.hostname:修改host主域名
- location.pathname:修改文件资源名
- location.port:修改访问端口
- location.replace(url):使用户不能回到前一个页面,断开历史记录
- location.reload():重新加载页面,接收一个Boolean值,默认为false,如果为true,则强制重新从服务器加载新资源
navigator对象
- 详细请看高程210页表格
- 检测插件
navigator.plugins。可以得到一个数组,每项都包含name,description,filename,length
history对象
- history.go(-1)://后退一页
- history.go(1): //前进一页
- history.go(2): //前进两页
- history.go(string):跳到最近的host为string的网址
- history.back():后退
- history.forward():前进
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。