【发布时间】:2016-05-20 20:46:16
【问题描述】:
我正在尝试将 this jQuery plugin 集成到 Ionic 应用程序中。我对创建一个 Angular 指令来包装插件的想法感到满意,但我正在努力让它工作。
指令如下:
angular.module('myapp.directives', [])
.directive('flipbook', ['$rootScope', function ($rootScope) {
return {
restrict: 'A',
link: function (scope, elem, attrs) {
elem.bind('load', function () {
$(elem).flipbook({
speed: 125,
autoplay: false,
play: 'button#playbutton',
stop: 'button#pausebutton',
rewind: 'button#rewindbutton'
});
});
}
};
}]);
这是相关的模板:
<ion-view view-title="{{ album.title }}">
<ion-content>
<div flipbook>
<div class="gallery-item" ng-repeat="photo in album.photos | orderBy: 'created_at'">
<img ng-if="photo.thumbnail" ng-src="{{ photo.thumbnail }}"></img>
</div>
</div>
</div>
</ion-content>
</ion-view>
使用 AJAX 请求获取照片,然后使用 ng-repeat 拉入。
使用 Chrome 调试器,我已经能够确定 link 函数被调用,但绑定到 load 事件的函数永远不会被调用。所以大概我没有绑定到正确的事件。
鉴于我希望图像在初始化 jQuery 插件之前完成加载,我应该绑定到什么事件?
【问题讨论】:
标签: jquery angularjs angular-directive