window.open()简析

定义

window.open()方法用于打开一个新的浏览器窗口或者查找一个已命名的窗口

语法

window.open(URL, name, specs, replace)

具体语法可以参考:Window open() 方法

用法

1,关闭当前页面打开新的页面

使用window.open(),代码如下:

<body>
    <div id="openNew">关闭当前页面打开新页面</div>
</body>
<script type="text/javascript">
    openNew.onclick = function(){
        window.open('https://www.baidu.com', '_self')
    }
</script>

效果为当前的浏览器窗口页面挑战到了百度搜索页面

其它方法
除了使用window.open()之外,还有其它的方法可以实现相同的效果

使用<a>标签:

<a href="https://blog.csdn.net/huzhenv5">Welcome</a>

使用window.location.href

<body>
    <div id="openNew">welcome</div>
</body>
<script type="text/javascript">
    openNew.onclick = function(){
        window.location.href = 'https://blog.csdn.net/huzhenv5'
    }
</script>

2,保留当前页面打开新的浏览器tab页

使用window.open(),代码如下:

<body>
    <div id="openNew">openTab</div>
</body>
<script type="text/javascript">
    openNew.onclick = function(){
        window.open('https://www.baidu.com', '_blank');   
    }
</script>

其它方法

通过<a>标签实现:

<a href="https://blog.csdn.net/huzhenv5" target="_blank">Welcome</a>

3,保留当前页面打开新的html窗口

使用window.open(),代码如下:

<body>
    <div id=openNew>open new html window</div>
</body>
<script type="text/javascript">
    openNew.onclick = function(){
        window.open('https://www.baidu.com', '_blank', 'left=100, top=100, width=400, height=300, location=no, menubar=no, status=no, titlebar=no, toolbar=no');   
    }
</script>

注意:
window.open方法打开小窗口,越来越多的浏览器处于安全考虑,无法设置隐藏地址栏。如果要实现隐藏地址栏的功能,需要通过一些UI框架的模态框实现

4,控制父页面跳转到其它页面

父页面:

<div id=openNew>
    这是父页面
    <iframe id="subwindow" src="sub.html"></iframe>
</div>

子页面,sub.html:

<body>
    <div>我是子页面</div>
    <div id="paOpenNew">父页面跳转</div>
</body>
<script type="text/javascript">
    paOpenNew.onclick = function() {
    	// 也可通过parent.location.href实现
        // parent.location.href = 'https://www.baidu.com'
        window.open('https://www.baidu.com', '_parent')
    }
</script>

5,控制顶级页面跳转到其它页面

顶层页面:

<div id=openNew>
    这是顶级页面
    <iframe id="subwindow" src="next.html"></iframe>
</div>

下级页面,next.html:

<div id=openNew>
     这是下级页面
     <iframe id="subwindow" src="sub.html"></iframe>
 </div>

底层页面,sub.html:

<body>
    <div>我是底层页面</div>
    <div id="paOpenNew">顶级页面跳转</div>
</body>
<script type="text/javascript">
    paOpenNew.onclick = function() {
        // 也可以通过top.location.href实现
        // top.location.href = 'https://www.baidu.com'
        window.open('https://www.baidu.com', '_top')
    }
</script>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章