2016-03-05 110 views
0

我花了很多時間嘗試使用angular調用jQuery插件函數。迄今沒有成功。我想使用fancybox(jQuery)插件使用angularJS。使用AngularJS調用jQuery插件函數

我的小提琴:http://jsfiddle.net/lukiux666/LyaespL1/小提琴設置爲jQuery 2.2.1,所以你可以看到它是如何看,但我只需要使用相同的角度。

我需要調用此函數的jQuery在angularjs:

$(document).ready(function() { 
$(".fancybox").fancybox(); 
}); 

我最後一次嘗試是

angular.module('MyApp', []) 
.controller('MyCtrl', [function() { 

angular.element(document).ready(function() { 
    angualr.element(".fancybox").fancybox(); 
}); 
}]); 

我真的需要這個工作,非常感謝你提前。

+0

使用指令用於初始化插件 – charlietfl

+0

我已經試過了,但我不知道究竟是如何做到這一點。我讀過一些例子,但我仍然不明白如何去做。 –

回答

0

使用角度指示,我改變你的小提琴與指令執行,

angular.module('MyApp', []) 

.directive('fancybox', [function() { 
    function link($scope, $element){ 
     $element.fancybox(); 
    } 
    return { 
     restrict: 'AE', 
     link: link 
    } 
}]); 

看看這個fiddle

+0

設置框架和擴展 - > AngularJS 1.4.8和代碼不起作用。這就是即時通訊。 –

+0

@LukasRukštelis誰說的?上面的代碼有什麼問題? –

+0

是的,我將它設置爲顯式,但在任何情況下使用jquery插件的指令,並且從不在角度控制器或指令內使用ready事件,因爲在鏈接或控制器函數元素中已經準備好了。 – VahagnNikoghosian