属性:为与对象相关的值;
方法:能够在对象上执行的动作。
javascript之中对象是数据变量,在创建变量的时候,他就拥有了属性和方法;
eg:
var txt = "hello";//看似和对象没什么关系
属性:
txt.length = 5;
方法:
txt.indexOf();
txt.replace();
txt.search();
在面向对象语言中,属性和方法常被称为对象的成员;
创建JavaScript对象:
obj = new Object();
obj.name = "Tom";
obj.age = 20;
所有浏览器都支持window对象。它表示浏览器窗口。
所有javascript全局对象、函数以及变量均自动成为window对象的成员。
全局变量是window对象的属性。
全局函数是window对象的方法。包括document对象。
window.innerHerght:浏览器窗口内部高度;
window.innerWidth:浏览器窗口内部宽度;
对于IE5、6、7、8而言:
document.documentElement.clientHeight;
document.documentElement.clientWidth;
或者:
document.body.clientHeight;
document.body.clientWidth;
为了兼容所有的浏览器在使用时候可以将三种方式都用上;
eg:
var w=window.innerWidth|| document.documentElement.clientWidth|| document.body.clientWidth;
其他window方法:
window.open('xxx.html') - 打开新窗口
window.close('xxx.html') - 关闭当前窗口
window.screen对象包含有关用户屏幕的信息。在使用的时候可以不使用window前缀;
screen.width:屏幕宽度;
screen.height:屏幕高度;
screen.availWidth:可用的屏幕宽度;
scrren.availHeight:可用的屏幕高度;
window.location对象用于获得当前页面的地址(URL),并把浏览器重定向到新的页面。使用的时候可以不适用window这个前缀。
方法:
location.hostname:web主机的域名;
location.path:当前页面的路径和文件名;
location.port:web主机的端口(80或者443);
location.protocol:返回所使用的web协议(http://或者https://);
location.href:返回当前页面的URL;//可以通过赋值实现页面跳转;
location.pathname:返回URL的路径名;
location.assign('xxx.html'):加载新的文档;
window.history对象包含浏览器的历史;
方法:
history.length:历史记录的数目;
history.go([-num || num])://num表示数字;
history.forward(num):与浏览器点击前进按钮相同;
window.navigator:对象包含有关访问者浏览器的信息;
方法:
navigator.appCodeName--浏览器代码名的字符串表示navigator.appName--官方浏览器名的字符串表示
navigator.appVersion--浏览器版本信息的字符串表示
navigator.cookieEnabled--如果启用cookie返回true,否则返回false
navigator.javaEnabled--如果启用java返回true,否则返回false
navigator.platform--浏览器所在计算机平台的字符串表示
navigator.plugins--安装在浏览器中的插件数组
navigator.taintEnabled--如果启用了数据污点返回true,否则返回false
navigator.userAgent--用户代理头的字符串表示;返回包含浏览器版本等信息的字符串;
JavaScript计时:
setTimeout:
语法:
var t = setTimeout("function()",time)://未来的某时执行代码,只执行一次;毫秒为单位;
clearTimeout(t)://取消setTimeout();
//如果在一个函数中使用setTimeout();来调用自身可以实现无限循环;setInterval:
语法:
var t = setInterval("function()",time);//设置一个超时对象间隔time毫秒执行一次;
clearInterval(t);//清楚定时器setInterval;