如何使用AngularJS

时间:2015-05-30 12:52:00

标签: javascript angularjs

我正在开发一款新的AngularJS应用。我希望有一些类似于JSOUP功能的东西,但是在AngularJS上。

问题:

  • 如何获取外部网站的HTML代码?
  • 如何用“元素”(即:div,span等......)拆分它们?

我尝试在 app.js

中使用$ http.get
$scope.test = function(){
    $http.get("https://www.civiweb.com/FR/offre/71087.aspx").success(function(data){
        $scope.test = data;
    })
    .error(function(data){
      console.log("Error getting HTML : "+data);
    });

  }

的index.html

<div>{{test}}</div>

不工作......

我希望你能帮助我,谢谢你

1 个答案:

答案 0 :(得分:0)

糟糕的主意。

但如果你必须......

  

注意:这仅用于开发目的,而我的解决方案不会也不应该在其他计算机上运行。

我首先在iframe元素中注入HTML。

然后遍历内容的iframe HTML树。

<强>的index.html

<iframe ng-src="{{remoteUrl}}" > </iframe>

<强> app.js

var init = function($scope, $sce){
  $scope.remoteUrl = $sce.trustAsResourceUrl("http://example.com");
}

有关$sce的更多信息,请参阅How to set an iframe src attribute from a variable in AngularJS

现在剩下的就是等待加载iframe内容,然后遍历它。

继续 app.js

myFrame= document.getElementsByTagName('iframe');
myFrame.load = function(e){
  myDiv = myFrame.document.getElementById("ContenuPrincipal_BlocA1_m_oCity");
  alert(myDiv.innerHTML);
 }

现在要使其正常工作,您必须覆盖同源策略。 (一种方法是在你的主机文件中写你自己的行...或带标志的chrome)