JS window下面的对象
window.location对象:
•window.location.href=‘’;//重新导航到新页面,可以取值,也可以赋值。
•window.location.reload();//刷新当前页
window.event是IE下非常重要的属性,用来获得发生事件时的信息,事件不局限于window对象的事件,所有元素的事件都可以通过event属性取到相关信息。类似于winForm中的e(EventArgs)。//兼容IE、Chrome,不兼容FF(用event参数)。
•window.event.altKey属性,bool类型,表示事件发生时是否按下了alt键。类似的还有ctrlKey,shiftKey。演示:<inputtype="button" value="点击" onclick="if(event.altKey){alert('Alt点击')}else{alert('普通点击')}"/> ;:
•clientX、clientY发生事件时鼠标在客户区的坐标;screenX、screenY发生事件时鼠标在屏幕上的坐标;offsetX、offsetY发生事件时鼠标相对于事件源(比如点击按钮时触发onclick)的坐标。当页面中有<!DOCTYPE(文档定义)时,对offsetX和offsetY单击时的解析不同(使用onmousedown的时候与onclick测试结果不同。 )。(单击按钮中文字的时候。)
•(window.event.returnValue)returnValue属性,如果将returnValue设置为false,就会取消默认事件的处理。在超链接的onclick里面禁止访问href的页面。在表单校验的时候禁止提交表单到服务器,防止错误数据提交给服务器、防止页面刷新。(onsubmit="window.event.returnValue=false;")
•window.event.returnValue不兼容火狐浏览器
•FireFox:e. preventDefault();取消事件的默认动作。
直接写return false;IE、FF、Chrome都可以•srcElement:获得事件源对象。几个按钮共享一个事件响应函数用。****_click(objectsender,EventArgse)//IE、Chrome支持。见备注1。//FF下用e.target;
•button,发生事件时鼠标按键,IE:1为左键,2为右键,s4中滑轮//要测试event.button的值的时候,请在onmousedown事件中测试。在onclick事件中只能识别鼠标左键的单击。不同浏览器返回值可能不一样。(不同浏览器值不一样)
•除IE浏览器外,其他浏览器在绑定事件处理函数时,有一个默认的参数即event对象。
screen对象,获取屏幕的信息:
•alert("分辨率:" + screen.width +"*" + screen.height);
• if (screen.width <1024 || screen.height <768) {
• alert("分辨率太低!");
• }
•setData("Text",val),设置粘贴板中的值。
•getData(“Text”)读取粘贴板的值,返回值为粘贴板中的内容;
•clearData(“Text”)清空粘贴板;
•当复制的时候body的oncopy方法被触发,直接returnfalse就是禁止复制。<bodyoncopy="alert('禁止复制!');returnfalse;"
•很多元素也有oncopy(复制)、onpaste(粘贴)事件:oncut
document属性:
•document属性是window对象中最复杂的属性。
•因为使用window对象成员的时候可以省略window.,所以一般直接写document。
•document的方法:
•write();//向文档中写入内容。writeln(),和write差不多,只不过最后添加一个回车。在onclick等事件中写的代码会冲掉页面中的内容,只有在页面加载过程中write才会与原有内容融合在一起。writeln()是在源代码里面换行。与<br/>不一样。
•document.write()经常在广告代码、整合资源代码中被使用。
•(使用pre标签看write()与writeln()的区别,效果,见备注1)
•Js脚本一执行就会访问服务器。超链接诶还需要点击。
getElementById(), (非常常用),根据元素的Id获得对象,网页中id不能重复。也可以直接通过元素的id来引用元素,但是有有效范围、form1.textbox1之类的问题(当元素放在form中的时候(在html页面中需要通过form.元素id)),因此不建议直接通过id操作元素,而是通过getElementById。
getElementsByName(),根据元素的name获得对象,由于页面中元素的name可以重复,比如多个RadioButton的name一样,因此getElementsByName返回值是对象数组。
getElementsByTagName(),获得指定标签名称的元素数组,比如getElementsByTagName(“input”)可以获得所有的<input>标签。*表示所有标签
此处切忌不要使用forin循环(forin循环循环的是键值对,不是对象本身。)。(问题多多:radio时有相同的key,第一个key是length等等。。)建议:使用for循环。
document.getElementById()/document.all[‘id’](*)
document.getElementById()/document.all[‘id’](*)