在iframe中调用控制器函数

时间:2018-09-17 08:38:32

标签: javascript angularjs iframe

我使用ViewerJS来调用odp文件。我知道如何从父页面到iframe内的页面调用javascript函数,但是我不知道如何在angularjs中实现。我研究了一下,但是这让我很困惑。我希望有人能对此清除主意。

在我的控制器中,我想获取iframe内的当前页面和页面总数。我使用在父页面中创建的javascript代码完成了此操作,但无法在控制器中完成此操作。

控制器

$scope.url = "/ViewerJS/#../Uploads/" + $scope.data.filename;
$scope.getPages = function (currPage, totalPage) {
    console.log(currPage);
}
$scope.test = function (v) {
    console.log(v);
}

viewres.html

<iframe ng-src="{{url}}" allowfullscreen webkitallowfullscreen height="500" width="700" id="viewId"></iframe> 
<input type="text" ng-model="totalPages" id="totalPages">
<input type="text" ng-model="currPage" id="getpage">
<button ng-click="test(currPage)">test</button>

我试图将其绑定到模型中,但不幸的是,我的$scope.test()函数未得到结果

viewres.html中的Javascript

function getPages(currPage,totalPage) {
      document.getElementById('getpage').value = currPage;
      document.getElementById('totalPages').value = totalPage;
      document.getElementById('test1').innerHTML = totalPage;
      if (currPage === totalPage) {
          console.log("end of page");
      }
}

此javascript代码有效,但输入中未放置的值未绑定到范围。我只想直接在iframe中调用我的控制器函数,而不是此javascript函数。

0 个答案:

没有答案