JS之BOM的window对象
javascript组成部分:
EMCAScript(基本语法)
DOM
BOM( Browser Object MOdel) 浏览器对象模型.
1、BOM
浏览器对象模型中把浏览器 的各个部分都是用了一个对象进行描述,如果我们要
操作浏览器的一些属性,就可以通过浏览器对象模型的对象进行操作。
window 代表了一个新开的窗口
location 代表了地址栏对象。
screen 代表了整个屏幕的对象
2、window对象常用的方法:
open() 打开一个新的窗口。
其有四个属性,第一个为URL地址;第二个是窗口打开的方式;第三个是窗口打开的大小、地址栏是否存在、工具栏是否存在、距离窗口的位置等等;第四个参数时如果 URL找不到就用这个取代
resizeTo() 将窗口的大小更改为指定的宽度和高度值。
moveBy() 相对于原来的窗口移动指定的x、y值。
moveTo() 将窗口左上角的屏幕位置移动到指定的 x 和 y 位置。
setInterval() 每经过指定毫秒值后就会执行指定的代码。
clearInterval() 根据一个任务的ID取消的定时任务。
setTimeout() 经过指定毫秒值后执行指定 的代码一次。
注意: 使用window对象的任何属性与方法都可以省略window对象不写的。
<head> <script type="text/javaScropt> function showAd(){ open("ad.html","_blank","height=400px,width=400px,toolbar=no,location=no,top=200px"); } setTimeout("showAd()",2000); //var id = window.setInterval("showAd()",2000); function small(){ resizeTo(300,200); //相对于原本窗口改变指定的大小。 } function move(){ for(var i = 0 ; i<100 ; i++){ window.moveBy(50,0); // 相对于原来的窗口移动指定的x、y值。 moveBy(0,50); window.moveBy(-50,0); window.moveBy(0,-50); } } function move2(){ window.moveTo(500,200); } /* function clearTest(){ window.clearInterval(id); } */ </script> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <input type="button" onclick="showAd()" value="下载电影"/> <input type="button" onclick="small()" value="变小"/> <input type="button" onclick="move()" value="moveBy"/> <input type="button" onclick="move2()" value="moveTo"/> <input type="button" onclick="clearTest()" value="取消定时任务"/> </body>
3、window中常用事件
事件:
注册事件的方式:
方式一: 直接在html元素上注册
<body onload="ready()">
function ready(){
alert("body的元素被加载完毕了..");
}
方式二:可以js代码向找到对应的对象再注册。 推荐使用。
var bodyNode = document.getElementById("body");
bodyNode.onload = function(){
alert("body的元素被加载完毕");
}
常用的事件:
鼠标点击相关:
onclick 在用户用鼠标左键单击对象时触发。
ondblclick 当用户双击对象时触发。
onmousedown 当用户用任何鼠标按钮单击对象时触发。
onmouseup 当用户在鼠标位于对象之上时释放鼠标按钮时触发。
鼠标移动相关:
onmouseout 当用户将鼠标指针移出对象边界时触发。
onmousemove 当用户将鼠标划过对象时触发。
焦点相关的:
onblur 在对象失去输入焦点时触发。
onfocus 当对象获得焦点时触发。
其他:
onchange 当对象或选中区的内容改变时触发。
onload 在浏览器完成对象的装载后立即触发。
onsubmit 当表单将要被提交时触发。(一般应用于下拉框)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script type="text/javascript"> function clickTest(){ alert("单击.."); } function dbClick(){ alert("双击.."); } function showTime(){ var timeSpan = document.getElementById("timeSpan"); var date = new Date().toLocaleString(); timeSpan.innerHTML = date.fontcolor("red"); } function hideTime(){ var timeSpan = document.getElementById("timeSpan"); timeSpan.innerHTML = ""; } function showInfo(){ var timeSpan = document.getElementById("userName"); timeSpan.innerHTML = "用户名是由6位的英文与数字组成".fontcolor("green"); } function hideInfo(){ var timeSpan = document.getElementById("userName"); timeSpan.innerHTML = ""; } function change(){ alert("城市改变了.."); } </script> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <input type="button" onclick="clickTest()" value="单击" /> <input type="button" ondblclick="dbClick()" value="双击"/> <span onmousemove="showTime()" onmouseout="hideTime()" >查看当前系统时间:</span><span id="timeSpan"></span> 用户名<input type="text" onfocus="showInfo()" onblur="hideInfo()" /> <span id="userName"></span> <select onchange="change()" > <option>广州</option> <option>深圳</option> <option>上海</option> </select> </body> </html>