Javascript中封装window.open解决不兼容问题


Posted in Javascript onSeptember 28, 2014

对window.open进行封装, 使其更好用, 且更兼容, 很多人说window.open不兼容,其实不是, 因为不能直接执行, 必须通过用户手动触发才行;看代码:

代码如下

var openWindow = function(url, options) {
var str = "";
if (options) {
options.height = options.height || 420;
options.width = options.width || 550;
options.left = options.left || ((screen.width - options.width) / 2); //默认为居中
options.top = options.top || ((screen.height - options.height) / 2); //默认为居中

for (var i in options) {
str += ',' + i + '=' + options[i];
}
str = str.substr(1);
};
window.open(url, 'connect_window_'+ (+new Date), str);//参数1为url,参数2为了能可以重复弹出
str = null;
};


//demo 1:新窗口打开我的led投光灯电源网站
document.body.onclick = function(){
openWindow("http://www.daermay.com/ ?rel=xuexb");
}

//demo 2:固定宽 并居中
document.body.onclick = function(){
openWindow("https://3water.com/ ?rel=xuexb",{
width:888
});
}
Javascript 相关文章推荐
Jquery倒数计时按钮setTimeout的实例代码
Jul 04 Javascript
分析了一下JQuery中的extend方法实现原理
Feb 27 Javascript
javascript实现淘宝幻灯片广告展示效果
Apr 27 Javascript
深入解读JavaScript中的Iterator和for-of循环
Jul 28 Javascript
js仿微博实现统计字符和本地存储功能
Dec 22 Javascript
JavaScript_ECMA5数组新特性详解
Jun 12 Javascript
JavaScript中清空数组的三种方式
Mar 22 Javascript
详解Javascript获取缓存和清除缓存API
May 25 Javascript
js点击时关闭该范围下拉菜单之外的菜单方法
Jan 11 Javascript
Vue 中使用vue2-highcharts实现top功能的示例
Mar 05 Javascript
解决echarts数据二次渲染不成功的问题
Jul 20 Javascript
游戏开发中如何使用CocosCreator进行音效处理
Apr 14 Javascript
jQuery固定浮动侧边栏实现思路及代码
Sep 28 #Javascript
js文件包含的几种方式介绍
Sep 28 #Javascript
javascript中bind函数的作用实例介绍
Sep 28 #Javascript
js和jquery如何获取图片真实的宽度和高度
Sep 28 #Javascript
一个jquery实现的不错的多行文字图片滚动效果
Sep 28 #Javascript
IE中getElementsByName()对有些元素无效的解决方案
Sep 28 #Javascript
js propertychange和oninput事件
Sep 28 #Javascript
You might like
PHP 代码规范小结
2012/03/08 PHP
PHP 第一节 php简介
2012/04/28 PHP
WordPress中获取指定分类及其子分类下的文章数目
2015/12/31 PHP
Smarty模板语法详解
2019/07/20 PHP
[原创]网络复制内容时常用的正则+editplus
2006/11/30 Javascript
在IE下:float属性会影响offsetTop的取值
2006/12/22 Javascript
node.js中的fs.fstatSync方法使用说明
2014/12/15 Javascript
javascript去掉代码里面的注释
2015/07/24 Javascript
jQuery实现批量判断表单中文本框非空的方法(2种方法)
2015/12/09 Javascript
原生js实现autocomplete插件
2016/04/14 Javascript
JS对象深度克隆实例分析
2017/03/16 Javascript
angular仿支付宝密码框输入效果
2017/03/25 Javascript
微信小程序 支付功能(前端)的实现
2017/05/24 Javascript
JS实现经典的中国地区三级联动下拉菜单功能实例【测试可用】
2017/06/06 Javascript
微信小程序使用gitee进行版本管理
2018/09/20 Javascript
浅谈Vuex的this.$store.commit和在Vue项目中引用公共方法
2020/07/24 Javascript
Postman参数化实现过程及原理解析
2020/08/13 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
2020/09/21 Javascript
Python进行数据提取的方法总结
2016/08/22 Python
对python 矩阵转置transpose的实例讲解
2018/04/17 Python
解决Python一行输出不显示的问题
2018/12/03 Python
Django使用Celery加redis执行异步任务的实例内容
2020/02/20 Python
python爬虫beautifulsoup解析html方法
2020/12/07 Python
python制作抽奖程序代码详解
2021/01/15 Python
python UIAutomator2使用超详细教程
2021/02/19 Python
澳大利亚有机化妆品网上商店:The Well Store
2020/02/20 全球购物
志愿者活动总结报告
2014/06/27 职场文书
小学感恩节活动策划方案
2014/10/06 职场文书
2015年助残日活动总结
2015/03/27 职场文书
同意落户证明
2015/06/19 职场文书
制定企业培训计划的五大要点!
2019/07/10 职场文书
pytest进阶教程之fixture函数详解
2021/03/29 Python
golang gopm get -g -v 无法获取第三方库的解决方案
2021/05/05 Golang
Android Canvas绘制文字横纵向对齐
2022/06/05 Java/Android
js前端图片加载异常兜底方案
2022/06/21 Javascript
apache虚拟主机配置的三种方式(小结)
2022/07/23 Servers