2015-10-19 153 views
1

我知道這很簡單,一個愚蠢的問題,但我不能爲我的生活,使這項工作由於某種原因...打開在AngularJS新窗口

所以我有一個鏈接(根據使用的onclick非角彈出):

<a href="page.html" ng-click="popitup('page.html')">Page</a> 

而且範圍內的功能:

$scope.popitup = function(url) { 
    return $window.open(url, '_blank', 'height=200,width=150'); 
}; 

所有我想要的是,當有人點擊該鏈接,打開一個新的窗口,並顯示page.html中。我試過改變鏈接和函數的小部分,但我無法得到它。我確信這是一個小事,我做錯了。

+0

你在$範圍和$窗口傳遞您的控制器功能就像在文檔中的例子嗎? https://docs.angularjs.org/api/ng/service/$window – Jbird

+0

AH!這可能是.. brb編譯.. – elykl33t

+0

沒關係。我添加了$ window和$ scope已經在那裏。似乎沒有改變任何東西。 – elykl33t

回答

1

試試這個。在HTML

<body ng-controller="MainCtrl"> 
    <a role="link" ng-click="popitup('page.html', '_blank')">Page</a> 
    </body> 

在控制器

app.controller('MainCtrl', function($scope, $window) { 
    $scope.popitup = function(url, target) { 
    $window.open(url, target); 
}; 
}); 

plunker

+0

的全限定網址,您還可以設置在新窗口中打開的高度寬度。玩蹦極 –

0

這爲我工作。

HTML

<a data-ng-click="openPrintMode()"> 
          <i class="fa fa-print"></i> 
         </a> 

控制器

$rootScope.openPrintMode = openPrintMode; 

function openPrintMode() { 
      $window.open($location.$$absUrl + "?v=p", "_blank"); 
     }