IE11 window.open не загружает страницу на существующей вкладке

У меня есть страница, которая открывает вторую вкладку в IE11, а затем на второй вкладке я хочу иметь возможность щелкнуть кнопку, чтобы первая вкладка загружала другую страницу. Я включаю простой пример, который правильно работает в Chrome, но не в IE11.

В приведенном ниже коде я явно устанавливаю имя окна. для первой вкладки в PascalPage, и хотя я ссылаюсь на это имя в вызове window.open в page2.html, оно загружает страницу Google на вкладке page2.html вместо page1. вкладка .html

Страница 1.html

<html>
<head>
    <title>Page1</title>

    <script>
        this.window.name="PascalPage";
        function doStuff() {
            window.open("page2.html", "_blank");
        }
    </script>
<head>
<body>
    <button onclick="javascript:doStuff();" value="button">Button</button>
</body>
</html>

Страница 2.html

<html>
<head>
    <title>Page2</title>

    <script>
        function doStuff() {
            window.open("http://www.google.com", "PascalPage");
        }
    </script>
<head>
<body>
    <button onclick="javascript:doStuff();" value="button">Button</button>
</body>

In my Internet Settings options the selected option is to allow IE to decide how to handle tabs.

Кто-нибудь может помочь?


person Kash.    schedule 14.08.2015    source источник


Ответы (1)


Я нашел ответ...

        function loadUrlInTab(targetwindowname, url) {
            //open the url in the targetwindowname or new tab if the target window isnt already open
            winref = window.open('', targetwindowname);
            winref.location.href = url;
            winref.focus();
        }   

Вызов window.open() возвращает ссылку на окно с 'targetwindowname', а затем это простой случай установки местоположения для этого окна.

PS. Я обнаружил, что в Chrome инструкция focus() работает, а в IE11 — нет. Но в целом это второстепенная проблема.

person Kash.    schedule 14.08.2015