使用BOM 的window对象属性打开新窗口
★ 示例1
<buttononclick="btnOpen()">打开新窗口</button><hr/><span>使用JavaScript打开一个新的浏览器选项卡,并向其中动态写入HTML代码</span><script>function openNewWin(){var w = window.open();/*打开空白窗口*/var d = w.document;/*获取该窗口的document对象*/d.open();/*新建html文档*/d.write("Dynamic code...");d.close();/*关闭html文档*/}function btnOpen(){return openNewWin();}</script>
<h2>跳动的窗口</h2><hr/><buttononclick="bounce.start()">打开跳动的窗口</button><buttononclick="bounce.stop()">关闭跳动的窗口</button><script>/*声明跳动窗口的对象*/var bounce ={x:0, y:0, w:300, h:200,//确定新建浏览器窗口左上角的坐标(x,y),宽度w,高度hdx:10, dy:15,//定义x,y坐标每次变化的增量win:null,//应用即将创建的浏览器窗口internal:100,//(x,y)坐标更新间隔(以毫秒(ms)为单位)timer:null,//定时器,由setInternal()方法返回start:function(){//为使浏览器窗口居于屏幕中央,计算左上角的坐标(x,y)bounce.x =(screen.availWidth - bounce.w)/2;bounce.y =(screen.availHeight - bounce.h)/2;//创建一个新的浏览器窗口并显示它//第一个参数表示新窗口中要显示的URL,可以直接使用JavaScript前缀执行简短的JavaScript代码//当浏览器解析到open的第一个参数会发现"<h1>Bounced-Window</h1>"不是JavaScript,但默认情况下对于不能执行的javaScript代码//浏览器会直接输出,刚好实现了向新窗口输入HTML代码的目的bounce.win = window.open('JavaScript:"<h1>Bounced-Window</h1>"',"_blank","left="+ bounce.x +",top="+ bounce.y +",width="+ bounce.w +",height="+ bounce.h +"");bounce.timer = setInterval(bounce.nextFrame, bounce.internal);//也可以不在上面的open方法中使用"javascript:"前缀来输出html代码,而是直接调用新窗口的document.write()方法来输出// 使用bounce.win.document来访问新窗口的document对象//每隔指定的毫秒数就使用setInterval( )方法调用nextFrame( )//方法返回值保存在timer属性中,这样,后面我们就可以调用clearInterval( )方法停止动画},stop:function(){clearInterval(bounce.timer);if(!bounce.win.closed) bounce.win.close();},nextFrame:function(){//如果关闭窗口,则清除定时器if(bounce.win.closed){clearInterval(bounce.timer);}//如果浏览器窗口跳动到屏幕的左或右边缘,则反向移动if((bounce.x + bounce.dx)>(screen.availWidth - bounce.w)||(bounce.x + bounce.dx)<0)bounce.dx =-bounce.dx;if((bounce.y + bounce.dy)>(screen.availHeight - bounce.h)||(bounce.y + bounce.dy)<0)bounce.dy =-bounce.dy;//同步更新当前窗口左上角的坐标,并结合moveTo属性实现跳动效果bounce.x =(bounce.x + bounce.dx);bounce.y =(bounce.y + bounce.dy);bounce.win.moveTo(bounce.x, bounce.y);}}</script>

使用BOM 的window对象属性打开新窗口的更多相关文章
- js 用window.open(参数) 打开新窗口,在新窗口怎么获取传过来的参数
unction openwin(taskno){window.open ('playIt.jsp?taskno='+taskno,'play','height=100,width=400,toolba ...
- JS打开新窗口防止被浏览器阻止的方法
这篇文章主要介绍了JS打开新窗口防止被浏览器阻止的方法,分析对比了常用方法与改进方法,是非常实用的技巧,需要的朋友可以参考下 本文实例讲述了JS打开新窗口防止被浏览器阻止的方法.分享给大家供大家参考. ...
- JS打开新窗口防止被浏览器阻止的方法[转]
本文实例讲述了JS打开新窗口防止被浏览器阻止的方法.分享给大家供大家参考.具体分析如下: 用传统的window.open()方式打开新窗口,会被浏览器阻止,那么,我们如何才能让JS打开新窗口不被浏览器 ...
- BOM之window对象
双重角色 BOM的核心对象是window,它表示浏览器的一个实例.在浏览器中,window对象有双重角色,它既是通过Javascript访问浏览器窗口的一个接口,又是ECMAScript规定的Glob ...
- window.open打开新窗口被浏览器拦截的处理方法
一般我们在打开页面的时候, 最常用的就是用<a>标签,如果是新窗口打开就价格target="_blank"属性就可以了, 如果只是刷新当前页面就用window.loca ...
- JavaScript Window对象属性
window 代表浏览器中一个打开的窗口. Window的属性 属性 描述 closed 获取引用窗口是否已关闭. defaultStatus 设置或获取要在窗口底部的状态栏上显示的缺省信息. dia ...
- 【repost】js window对象属性和方法相关资料整理
window对象有以下方法: open close alert confirm prompt setTimeout clearTimeout setInterval clearInterval mov ...
- window.open打开新窗口 参数
1,基本描述 oNewWindow = window.open( sURL , sName , sFeatures, bReplace) window.open在打开一个窗口(其url为sURL)后, ...
- javascript window对象属性和方法
window对象 window对象表示一个浏览器窗口或一个框架.在客户端JavaScript中,window对象是全局对象,所有的表达式 都在当前的环境中计算.也就是说,要引用当前窗口根本不需要特殊的 ...
随机推荐
- 每日英语:A Whiff Of 'Welcome Home'
Buying real estate involves weighing a lot of factors: location, price . . . smell? Some condo devel ...
- OpenSSL命令---pkcs12
用途: pkcs12文件工具,能生成和分析pkcs12文件.PKCS#12文件可以被用于多个项目,例如包含Netscape. MSIE 和 MS Outlook. 用法: openssl pkcs12 ...
- <《基金经理投资笔记丛书4-1:投资是一种生活方式》>
在中国股市每年能获得10%的收益已经是非常好了,但问题是大多数股民不认为这是一个很高的收益水平,尽管现实中大多数股民的收益状况比这要差很多. 投资中一个重要的心理陷阱是过度自信,过度自信的一个主要表现 ...
- 伪装MAC地址
一.界面操作法 打开"网上邻居",右键属性"本地连接",点击配置 选择"高级",再选"网路卡位址"(不同系统名字略不同) ...
- AchartEngine绘图引擎
https://code.google.com/p/achartengine/ Code Test代码: /workspace/AChartEngineTest /workspace/appco ...
- React Native 重新建项目遇到的一些问题
1.基本上一句话,就是本地的node太旧了,跟不上React_Native的节奏,所以需要更新node,但是单纯的更新node丫丫竟然不让我跟,因为是用Homebrew来管理的,所以先update了下 ...
- 数据仓库与ODS的区别
我在公司的数据部门工作,每天的订单类数据处理流程大致如下: 删除分析数据库的历史订单数据 全量更新订单数据到分析数据库.(由于订单核心数据不大,所以经受得起这么折腾) 将数据简单清洗,并生成数据集市层 ...
- javap生成的字节码
https://www.zhihu.com/question/49470442/answer/135812845http://blog.csdn.net/tzs_1041218129
- Backbone之旅——Collection and View篇
上篇文章说了Model,这次说说Collection,collection就是model的集合,用来装载model对象的 定义方法 var Persons = new Backbone.Collect ...
- 多线程调用WebClient速度变慢的问题
设置 System.Net.ServicePoint 对象所允许的最大并发连接数 System.Net.ServicePoint 对象允许的最大并发连接数.默认值为 2 System.Net.Serv ...