A页面中使用 window.open('B.html'); 在新窗口打开B页面;
B页面点击返回按钮,如果A页面窗口存在则给予A页面所在窗口焦点(即显示A窗口),如果A页面窗口不存在,则在新窗口打开
B页面js代码如下:
var Awin = null;//A 窗口对象
function GoBack() {
if (Awin == null) {
Awin = window.opener;//返回对创建此窗口的窗口的引用(A窗口对象)
if (Awin.closed) {
Awin = window.open(Awin.location.href);
else {
//方法1======
Awin.focus();//无效
//===========
//方法2=======
window.blur();
setTimeout(Awin.focus, 0);//无效
//============
//方法3========
Awin.alert('返回');//可行,但是体验不好
//============
window.focus() 方法可把焦点给予一个窗口
在Chrome、FireFox、360浏览器、或者较高版本IE等等 无效
网上搜索提到用 setTimeout 延时执行可解决,经尝试还是没有效果
用 alert 提示信息就可以,但是用户体验不好
请问各位大神有什么好的解决方法,谢谢!
<script>
window.name = '123'
document.getElementById('test').addEventListener('click', function () {
window.open('index2.html', 'mywindow');
document.getElementById('test2').addEventListener('click', function () {
window.open('javascript:;', 'mywindow');
</script>
页面B代码:
<script>
document.getElementById('test').addEventListener('click', function () {
window.open("javascript:;", window.opener.name);
</script>
@弦断有谁听: 谢谢你的回复。
可能你没有明白我的意思。就像提问里给出的例子,浏览器有A、B两个窗口,B窗口是由A窗口打开的,打开B窗口后看到的当然是B页面的内容,B页面有一个按钮,要求点击按钮后,浏览器显示A窗口,B窗口不关闭
显示的是B页面:

点击按钮后,显示A页面,B页面不关闭

支持(0)
反对(0)
园豆:154
(初学一级)
2017-02-15 16:56