首页 > 网站 > WEB开发 > 正文

JavaScript高级程序设计之window对象

2024-04-27 14:23:21
字体:
来源:转载
供稿:网友

javaScript高级程序设计之window对象

在浏览器中window对象实现了Javascript中的Global对象;

window对象是最顶层的对象;

所有其他全局的东西都可以通过它的属性检索到。

var a = 5;window.aa = 10;// 所有全局变量都可以通过window的属性找到,但不是真正的属性console.log(window.a);  // 5// delete操作符只能删除对象的属性,不能删除游离的变量delete a;delete aa;console.log(a);  // 5console.log(aa);  // error: aa is not defined

window(窗口)的位置

// 获取窗口距离屏幕左上角的位置var getWinPos = function () {    return {        leftPos: (typeof window.screenLeft === "number") ? window.screenLeft : window.screenX,        topPos: (typeof window.screenTop === "number") ? window.screenTop : window.screenY    };};

窗口的大小

// 获取窗口的大小var getWinSize = function () {    var width = window.innerWidth,        height = window.innerHeight;    if (typeof width !== "number") {                // 标准模式        if (document.compatMode === "CSS1Compat") {            width = document.documentElement.clientWidth;            height = document.documentElement.clientHeight;        } else {            width = document.body.clientWidth;            width = document.body.clientHeight;        }    }    return {        width: width,        height: height    };};/* * doucment.compatMode 只可能返回两个状态:CSS1Compat, BackCompat;分别表示标准模式和怪异模式 * 属性早期浏览器大战是留下的hack*/

弹出窗口window.open

// window.open("http://www.google.com/"); 默认新窗口打开// 打开一个定制的新窗口到目前窗口var popWin = window.open("http://www.so.com/", "_blank", "width=400,height=400,top=100,left=100,resizable=yes");// 在原来位置的基础上作矢量位移popWin.moveBy(300, 200);// 检测弹出窗口是否被屏蔽var isPopWinBlocked = function (url) {        var blocked = false;    try {        var popWin = window.open(url);        if (popWin === null) {            blocked = true;        }    } catch (ex) {        blocked = true;    }    return blocked;};if (isPopWinBlocked("http://www.so.com/")) {    alert("popWin is blocked");} else {    alert("ok");}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表