摘要: //检测插件(在IE中无效) function hasPlugin(name) { name = name.toLowerCase(); for (var i = 0; i < navigator.plugins.length; i++) { if (navigator.plugins[i].name.toLowerCase().indexOf(name) > -1) { return true; } ret... 阅读全文
posted @ 2012-03-23 17:57 cqclassic 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 如果是浏览器内置的屏蔽程序阻止的弹出窗口,那么window.open()很可能返回null。如果是浏览器扩展或其他程序阻止的弹出窗口,那么window.open()通常会抛出一个错误。因此,要想准确检测出弹出窗口是否被屏蔽,必须在检测返回值的同事,将对window.open()的调用封装在一个try-catch块中 var blocked = false; try { var windownew = window.open("http://www.baidu.com", "_blank"); //alert(windown... 阅读全文
posted @ 2012-03-23 15:07 cqclassic 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 静态私有变量 (function() { var name = ""; //私有变量,只在私有作用域中可以访问到 Person = function(value) { name = value; alert("私有作用域中的全局变量中的this:" + this); }; //Person为全局变量的构造函数 ,这时this为局部变量,所以name=value不能写成this.name=value; Person.prototype.getName = function() { return name;... 阅读全文
posted @ 2012-03-23 13:21 cqclassic 阅读(331) 评论(0) 推荐(0) 编辑
摘要: (function(){//这里就是块级作用域})();块级作用域 //无论在什么地方,只要临时需要一些变量,就可以使用块级作用域 function outputNumbers(count) { ( function() { for (var i = 0; i < count; i++) {alert(i);} } )(); alert(i); //error } outputNumbers(3);这种技术经常在全局作用域中被用在函数外部,从而限制向全... 阅读全文
posted @ 2012-03-23 12:18 cqclassic 阅读(309) 评论(0) 推荐(0) 编辑