2017-10-11 143 views
2

在我的情況下,我使用了一個iframe,我需要根據其內容自動計算其高度。Angularjs動態調整iframe的高度

我的代碼看起來像這樣

<iframe id='iframe' width='100%' height='600px' src='http://test.com' /> 

我如何通過我的控制器或指令設置的iframe內容的高度?

任何人都可以幫助我嗎? 謝謝

回答

0

在你的情況,我認爲你想要的是定義一個像iframeSetDimentionsOnload這樣的指令並設置高度。我會在幾分鐘內給你舉例。

你iframeSetDimensionsOnload指令:

yourApp.directive('iframeSetDimensionsOnload', [function(){ 

return { 

    restrict: 'A', 

    link: function(scope, element, attrs){ 
    element.on('load', function(){ 

     /* Set the dimensions here, 
      I think that you were trying to do something like this: */ 

      var iFrameHeight = 

      element[0].contentWindow.document.body.scrollHeight + 'px'; 
      var iFrameWidth = '100%'; 
      element.css('width', iFrameWidth); 
      element.css('height', iFrameHeight); 
     }) 
    } 
} 
}]) 

使用方法如下:

<iframe iframe-set-dimensions-onload src='http://test.com' />