简体   繁体   中英

How to get HTML from iframe in angular

I want to get HTML code of header from iframe and put it to angular app. It's looks like:

iframe:

<div id="event-details-wrapper">
   <div id="event-details">Header</div>
</div>

angular html:

 <iframe id="welcome-iframe" ng-src="{{ welcomeUrl }}"></iframe>

 {{ header }}
  <br />
 <div ng-bind-html="header"></div>

angular js:

 $scope.welcomeUrl = $sce.trustAsResourceUrl('http://localhost:63342/welcome.html?id=123');

var html = $sce.trustAsHtml(angular.element('#welcome-iframe').contents().find('#event-details-wrapper').get(0).innerHTML) ;

$scope.header =   html + '<div>Hello</div>' ;

And result:

 ...</iframe>
      <div id="event-details">Header</div> //just text


      Hello //div element

How can I paste HTML from iframe to my app?

Just do something along the lines of:

var targetIFrame= window.frames['targetIFrame'].document;
var iFrameBody = targetIFrame.getElementsByTagName('body');
var iFrameHeader = iFrameBody.getElementById('event-details-wrapper');

$scope.header = iFrameHeader.innerHTML;

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM