BOM和DOM编程
BOM(browser object model):浏览器对象模型
浏览器:windows对象
Window 对象方法:
alert(); 显示带有一段信息和一个确认按钮的警告框
confirm(); 显示带有一段信息以及确认取消按钮的对话框
prompt(); 显示可提示用户输入的对话框
colse(); 关闭所有窗口
moveby(); 相对于窗口的当前坐标移动到指定像素
moveto(); 相对于大窗口的左上角移动到指定位置
open(); 打开一个新窗口
print(); 打印当前窗口
setTimeout(); 在指定的毫秒后调用函数或表达式
history(历史记录):
1、history.length 当前站点的浏览次数
2、history.back() 返回上一页
3、history.forward() 返回下一页
4、history.go() -1 表示向后,1表示向前
location(路径):
window.location.href //当前url
window.location.hostname //主机名称
window.location.host //主机名称+端口
window.location.post //端口(http协议:80;https协议:443)
window.location.protocol //协议
window.location.search //?后面的值
window.location.hash //锚点后面的值
screen(屏幕):
1、screen.width 屏幕宽度
2、screen.height 屏幕高度
3、screen.availWidth 获取除任务栏外系统屏幕的宽
4、screen.availHeight 获取除任务栏外系统屏幕的高
navigator(浏览器内核信息):
console.log(navigator.appCodeName) 返回浏览器的代码名
console.log(navigator.appMinorVersion) 返回浏览器的次级版本
console.log(navigator.appName) 返回浏览器的名称
console.log(navigator.appVersion) 返回浏览器的平台个版本信息
console.log(navigator.browserLanguage) 返回当前浏览器的语言
console.log(navigator.cpuClass) 返回浏览器系统的CPU等级
console.log(navigator.platform) 返回运行浏览器的操作系统平台
console.log(navigator.userAgent) 返回由客户机发送服务器的user-agent头部的值
console.log(navigator.userLanguage) 返回os的自然语言设置
document(文档DOM):
1、window.open() 打开新窗口
2、window.close() 关闭当前窗口
3、window.moveTo() 移动当前窗口 (相对于左上角)
4、window.resizeTo() 调整当前窗口的尺寸
5、window.moveBy() 移动当前窗口 (相对于鼠标)
6、window.location 对象用于获得当前页面的地址 (URL),并把浏览器重定向到新的页面
DOM(document object model):文档对象模型
获取DOM对象:
在JavaScript中,如何获取HTML标签?
1)console.log(id名称) //直接通过id直接获取
id名称.innerHTML = "新的内容";
2)document.getElementById(""); //通过id使用document对象ByElementById方法获取
console.info(_msg)
_msg.innerHTML = "这个是通过id来获取的标签"
操作DOM对象的内容:
[if !supportLists]1、[endif]innerHTML操作内容
var id=document.getElementById(“id”)
console.info(id.innerHTML)
id.innerHTML=”内容”
[if !supportLists]2、[endif]innerTEXT操作内容的文本 非w3c
var id=document.gerElementById(“id”)
console.info(id.innerText)
id.innerText=”内容”
[if !supportLists]3、[endif]w3c下的操作文本内容
var id=document.getElementById(“id”)
console.info(id.textContent)
id.textContent=”内容”
操作DOM对象的属性:
1、DOM对象.属性名称=新值
2、DOM对象["属性名称"] = 新值;
3、DOM对象.getAttribute("属性名称");
4、DOM对象.setAttribute("属性名称", "新值");
操作DOM对象的样式:
[if !supportLists]1、[endif]通过 DOM对象.style.样式名称,获取样式值,这种方式只能获取行内样式,无法获取页面或外联样式
console.info(id.style.height)
[if !supportLists]2、[endif]w3c有一个api,用于获取样式,不过该api存在兼容性,IE9+
console.log(getComputedStyle(class).height)
console.log(getComputedStyle(class).width)
针对IE8及其以下的浏览器,MS专门提供了一个api
console.info(id.currentStyle.height)
3、因为获取宽高的值进行操作,那么使用之前的方法,获取的值是携带单位的字符串,操作时需要先去掉单位,计算完成后,赋值的时候又需要拼接单位
offsetWidth offsetHeight获取的时候存在边框
console.info(id.offsetWidth)
console.info(id.offsetHeight)
clientHeight clientWidth即便是存在边框,它也不获取
console.log(id.clientWidth)
console.log(id.clientHeight)