1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Navigator</title> 6 </head> 7 <script type="text/javascript"> 8 /* 9 BOM 10 浏览器对象模型 11 BOM可以使我们通过JS来通过操作浏览器 12 在BOM中为我们提供了一组对象,用来完成对浏览器的操作 13 BOM对象 14 Window 15 代表的是整个浏览器的窗口,同时window也是网页中的全局对象 16 Navigator 17 代表的当前浏览器的信息,通过该对象可以来识别不同的浏览器 18 Location 19 代表当前浏览器的地址栏信息,通过Location可以获取地址栏信息,或者操作浏览器跳转页面 20 History 21 代表浏览器的历史记录,可以通过该对象来操作浏览器的历史记录 22 由于隐私原因,该对象不能获取到具体的历史记录,只能操作浏览器向前向后翻页 23 而且该操作只在当次访问时有效 24 Screen 25 代表用户的屏幕的信息,通过该对象可以获取到用户显示器的相关的信息 26 27 这些BOM对象在浏览器中都是作为window对象的属性保存的, 28 可以通过window对象来使用,也可以直接使用 29 30 */ 31 window.onload=function() 32 { 33 /* 34 Navigator 35 代表的当前浏览器的信息,通过该对象可以来识别不同的浏览器 36 由于历史原因,Navigator对象中的大部分属性都已经不能帮助我们识别浏览器了 37 一般我们只会使用userAgent来判断浏览器的信息 38 userAgent是一个字符串,这个字符串中包含有用来描述浏览器的信息的内容 39 不同的浏览器会有不同的userAgent 40 火狐 41 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:68.0) Gecko/20100101 Firefox/68.0 42 Safari 43 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0 Safari/605.1.15 44 */ 45 //alert(navigator.userAgent); 46 var ua=navigator.userAgent; 47 if(/firefox/i.test(ua)){ 48 alert("( ⊙ o ⊙ )啊!哈哈哈哈你是火狐呀~"); 49 }else if(/safari/i.test(ua)) 50 { 51 alert("Safari!!!"); 52 }else if(/msie/i.test(ua)||("ActiveXObject" in window) ){ 53 alert("IE你好~(≧▽≦)/"); 54 /* 55 在IE11中已经将微软和IE相关的标识都已经去除了,所以我们基本已经不能通过UserAgent 56 来识别一个浏览器是否是IE了 57 还可以通过一些浏览器中的特有的对象,来判断浏览器的信息 58 比如 ActiveXObject 59 */ 60 }else if(/chrome/i.test(ua)){ 61 alert("谷歌:_(:з」∠)_早!"); 62 } 63 }; 64 </script> 65 <style type="text/css"> 66 </style> 67 <body> 68 <div id="box1"></div> 69 </body> 70 </html>
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>History</title> 6 </head> 7 <script type="text/javascript"> 8 /* 9 length 10 属性 考研获取到当前访问链接数量 11 */ 12 window.onload=function(){ 13 var button1=document.getElementById("button1"); 14 button1.onclick=function(){ 15 /* 16 back() 17 可以用来回退到上一个页面,作用和浏览器的回退按钮一样 18 19 forward() 20 可以跳转下一个页面,作用和浏览器的前进按钮一样 21 22 go() 23 可以用来跳转到指定的页面 24 需要一个整数作为参数 表示向前向后跳转几个页面 25 */ 26 history.back(); 27 history.go(-1); 28 }; 29 30 alert(history.length); 31 }; 32 33 </script> 34 <style type="text/css"> 35 36 </style> 37 <body> 38 <button id="button1">button</button> 39 <div id="box1"></div> 40 </body> 41 </html>
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Location</title> 6 </head> 7 <script type="text/javascript"> 8 9 window.onload=function(){ 10 var button1=document.getElementById("button1"); 11 button1.onclick=function(){ 12 /* 13 Location 14 该对象中封装了浏览器的地址栏的信息 15 如果直接打印location,则可以获取到地址栏的信息(当前页面的完整的路径) 16 如果直接将location属性修改为一个完整的路劲或相对路径 17 则我们页面会自动跳转到该路径,并会生成相应的历史记录 18 */ 19 alert(location); 20 //location="http://www.baidu.com"; 21 /* 22 assign() 23 用来跳转到其他的页面,作用和直接修改location一样 24 reload() 25 用来重新加载当前页面,作用和刷新按钮一样,如果在方法中传递参数true, 26 则会强制清空刷新页面 27 replace() 28 可以使用一个新的页面替换当前页面,调用完毕也会跳转页面 29 不会生成历史记录,不能使用回退按钮 30 */ 31 location.assign("https://avrillavigne.com"); 32 location.reload(true); 33 location.replace("123.html"); 34 }; 35 }; 36 </script> 37 <style type="text/css"> 38 </style> 39 <body> 40 <input type="text"/> 41 <button id="button1">button</button> 42 <div id="box1"></div> 43 </body> 44 </html>