0

kendo-window我在我的html中放置了一个。

根据文档,窗口对象应该在范围内可用。

现在,我想activate从在窗口内声明的控制器内将侦听器绑定到窗口的事件。IE:

标记:

<body ng-app="app">

    <div kendo-window='potatoWindow'>
        <div ng-controller='PotatoController'>
            here
        </div>
    </div>

js:

var app = angular.module("app", ["ngRoute", "kendo.directives"]);

app.controller("PotatoController", function($scope){
    $scope.potatoWindow.bind("activate",
        function () {
            console.log("potato");
        });
});

...但在控制器期间potatoWindow找不到窗口对象( )。$scope

问:

  1. 为什么窗口对象不可用?我错过了什么吗?
  2. 如果无法访问窗口对象 - 有没有办法通过其他方式获得相同的结果?
4

1 回答 1

2

我认为您的剑道窗口标记需要成为控制器标记的一部分。另外,尝试使用k-on-activate绑定并在控制器中定义您的函数,如下所示:

标记:

  <div ng-controller='PotatoController'>
             <div kendo-window='potatoWindow' k-on-activate='fry()'>
                 here
             </div>
   </div>

JS:

  var app = angular.module("app", ["ngRoute", "kendo.directives"]);    
    app.controller("PotatoController", function($scope){
         $scope.fry = function(e){
              console.log('fried!');
         };
    });
于 2014-10-08T21:51:47.250 回答