2015-01-08 7 views
0

Я пытаюсь открыть новое всплывающее окно, указав заголовок и URL-адрес. У меня есть что-то вроде этого.Как установить заголовок всплывающего окна?

Html

<a href="#" ng-click="openLink(link)">Open me<a> 

мой файл контроллера.

$scope.openLink = function(link) { 
    $window.open(link.url).document.title = link.title 
} 
//I am sure link.title is not undefined. 

Приведенный выше код откроет новую вкладку с адресом. Тем не менее, я хочу контролировать заголовок всплывающего окна. Это возможно?

URL и мой сайт находятся в том же домене. Мои коды выше не будут устанавливать заголовок, даже если целевой URL не имеет настройки атрибута заголовка. У меня был подобный пост, но это не угловое решение. How to set the title for the new browser tab? Есть ли способ исправить его угловым способом. Спасибо!

ответ

0

С $ окно просто ссылается на окно, это в основном window.open(link.url), для которого вы можете использовать

var win = window.open('', 'foo', ''); // open popup 

function check() { 
    if(win.document) { // if loaded 
     win.document.title = "test"; // set title 
    } else { // if not loaded yet 
     setTimeout(check, 10); // check in another 10ms 
    } 
} 

check(); // start checking 

установить название, когда страница была загружена. Код прямо от Stewie Griffins' answer.

+0

Это хорошо работает для пустой страницы, но для открытия pdf-файла на новой вкладке это не работает – Venkat