1.32 JavaScript的BOM(二)

即 浏览器对象模型(Browser Object Model)

浏览器对象包括 
一、Window(窗口)

如果需要打开一个新的网站,应该通过超级链接等方式让用户主动打开,在没有告知用户的前提下就打开一个新的网站会影响用户的体验。

 <script>
<!--通过window对象可以获取文档显示区域的高度和宽度-->
document.write("文档内容");
document.write("文档显示区域的宽度"+window.innerWidth);
document.write("<br>");
document.write("文档显示区域的高度"+window.innerHeight);
<!--部窗体即浏览器,可能用的是360,火狐,IE, Chrome-->
document.write("浏览器的宽度:"+window.outerWidth);
document.write("<br>");
document.write("浏览器的高度:"+window.outerHeight);
<!--window的open方法做到打开另一个网站,在没有告知用户的前提下就打开一个新的网站会影响用户的体验-->
function openNewWindow(){
myWindow=window.open("/");
}
</script>
<button onclick="openNewWindow()">打开一个新的窗口</button>

二、Navigator(浏览器)

提供浏览器相关的信息

<script type="text/javascript">
document.write("<p>浏览器产品名称:");
document.write(navigator.appName + "</p>"); document.write("<p>浏览器版本号:");
document.write(navigator.appVersion + "</p>"); document.write("<p>浏览器内部代码:");
document.write(navigator.appCodeName + "</p>"); document.write("<p>操作系统:");
document.write(navigator.platform + "</p>"); document.write("<p>是否启用Cookies:");
document.write(navigator.cookieEnabled + "</p>"); document.write("<p>浏览器的用户代理报头:");
document.write(navigator.userAgent + "</p>");
</script>

三、Screen (客户端屏幕)

<html>
<body>
<script type="text/javascript">
document.write("用户的屏幕分辨率: ")
document.write(screen.width + "*" + screen.height)
document.write("<br />")
document.write("可用区域大小: ")
document.write(screen.availWidth + "*" + screen.availHeight)
document.write("<br />")
</script>
</body>
</html>

四、History(访问历史)

<button onclick="goBack()">返回</button>
<script>
function goBack()
{
history.go(-2); //-1表示上次,默认,-2表示上上次,以次类推
}
</script>
<button onclick="goBack()">返回上上次</button>

五、Location(浏览器地址)

<span>当前时间:</span>
<script>
var d = new Date();
document.write(d.getHours());
document.write(":");
document.write(d.getMinutes());
document.write(":");
document.write(d.getSeconds());
document.write(":");
document.write(d.getMilliseconds());
//reload方法刷新当前页面
function refresh(){
location.reload();
}
//跳转到另一个页面
function jump(){
//方法1
//location="/"; //方法2
location.assign("/");
}
</script>
<br>
<button onclick="refresh()">刷新当前页面</button>
<br>
<button onclick="jump()">跳转到首页</button>

其他属性(端口号、主机名等)

<script>
function p(s){
document.write(s);
document.write("<br>");
} p("协议 location.protocol:"+location.protocol);
p("主机名 location.hostname:"+location.hostname);
p("端口号 (默认是80,没有即表示80端口)location.port:"+location.port); p("主机加端口号 location.host: "+location.host);
p("访问的路径 location.pathname: "+location.pathname); p("锚点 location.hash: "+location.hash);
p("参数列表 location.search: "+location.search); </script>

六、弹出框

1、alert弹出框

2、confirm确认对话框

3、prompt输入对话框

<script>
//1.alert弹出框
function register(){
alert("注册成功");
}
//2.确认对话框
function del(){
var d = confirm("是否要删除");
alert(typeof d + " " + d);
}
//3.输入对话框
function p(){
var name = prompt("请输入用户名:");
alert("您输入的用户名是:" + name);
}
</script>
<br>
<button onclick="register()">注册</button>
<br>
<button onclick="del()">删除</button>
<br>
<button onclick="p()">请输入用户名</button>
05-11 16:54