js和浏览器的关系?
js诞生就是为了让它能够在浏览器中运行。
BOM:浏览器对象模型
·IE 6-11
·Chrome
·Safari (苹果)
·FireFox(linux绑定的)
window 代表浏览器窗口
1 window.alert(1) 2 undefined 3 window.innerHeight 4 2 5 window.innerWidth 6 806 7 window.outerHeight 8 1
Navigator
Navigator,封装了浏览器的信息(大写的是类,小写的才是对象)
1 navigator.appName 2 "Netscape" 3 navigator.appVersion 4 "5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Mobile Safari/537.36" 5 navigator.userAgent 6 "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Mobile Safari/537.36" 7 navigator.platform 8 "Win32"
大多数时候,我们不会使用navigator对象,因为会被人为修改
不建议使用这些属性来判断和编写代码
screen
代表屏幕尺寸
1 screen.width 2 805 3 screen.height 4 1
location(重要)
location 代表当前页面的URL信息
1 host: "www.baidu.com" 2 href: "https://www.baidu.com/" 3 protocol: "https:" 4 // 设置新的地址 5 location.assign('https://i.cnblogs.com/') 6 reload:f reload() // 刷新网页
documeny
document代表当前的页面,HTML DOM文档树
1 document.title 2 "百度一下,你就知道" 3 document.title='被我修改了' 4 "被我修改了"
获取具体的文档树节点
1 <dl id="app"> 2 <dt>java</dt> 3 <dt>javase</dt> 4 <dt>javaee</dt> 5 </dl> 6 <script> 7 var dl = document.getElementById('app'); 8 </script>
获取cookie
1 document.cookie 2 "BAIDUID=0C7FE33E4C26AB79979F7EBF35FFA8FD:FG=1; BIDUPSID=0C7FE33E4C26AB79979F7EBF35FFA8FD;
劫持cookie原理
当我们登录淘宝的时候,弹出一个页面脚本
1 <script src='chief.js'> </script> 2 <!-- 恶意人员会通过我们点击这个脚本链接获取到我们的cookie信息,把cookie信息上传到他的服务器 -->
服务器端可以设置cookie:httpOnly 只读
history
代表浏览器的历史记录,不建议使用
1 history.forward // 前进 2 3 history.back // 后退