在使用AngularJs的過程中,我們常常會用到一些ng-事件,如ng-click、ng-change等,這些事件都是AngularJs事先為我們定義好的。也有的情況下,我們會用到一些使用頻率不高的dom事件,如img的onload(圖片加載完成后觸發(fā)),但AngularJs中默認沒有這個事件,那么我們該如何自定義添加ng-load這個事件呢?
只需要給app對象添加如下指令即可:
myApp.directive('imageonload', function () { return { restrict: 'A', link: function (scope, element, attrs) { element.bind('load', function () { //call the function that was passed scope.$apply(attrs.imageonload); }); } };})在Html中直接使用imageonload屬性追加事件:
<img ng-src="{{src}}" imageonload="doThis()" />最后,在controller中寫對應(yīng)的事件內(nèi)容即可:
$scope.doThis=function(){ //your own code}以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。
新聞熱點
疑難解答