2016-06-28 79 views
0

我想使用jSignature jquery插件與我的mvc +角度js項目,但我無法加載項目中的jquery,因爲我沒有正確的指令來加載它,需要幫助。如何創建一個角度指令來加載jQuery?

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/jquery-ui.min.js"></script> 
<script src="jquery.signature.js"></script> 
<script> 
    $(function() { 
     $('#sig').signature(); 
     $('#clear').click(function() { 
      $('#sig').signature('clear'); 
     }); 
     $('#json').click(function() { 
      alert($('#sig').signature('toJSON')); 
     }); 
     $('#svg').click(function() { 
      alert($('#sig').signature('toSVG')); 
     }); 
    }); 
</script> 
</head> 
<body> 

這是我用旁邊的jQuery插件的代碼,而是一個指令需要正確加載了jQuery,寫指令需要一些幫助?

+2

[正確的方式來集成jQuery插件在AngularJS]可能的重複(http://stackoverflow.com/questions/16935095/correct-way-to-integrate-jquery-plugins-in-angularjs) – abhishek

回答

2

您不需要指令加載 jQuery。在包含AngularJS之前只包括jQuery,angular將使用jQuery而不是jQlite。

1

的最佳實踐,包括第三方的js代碼是創建在link功能封裝代碼指令:

app.directive('myDir', function() { 
    return { 
    link:link 
    }; 

    function link($scope, $element, $attr){ 

     (function ($) { 
     $('#sig').signature(); 
     $('#clear').click(function() { 
      $('#sig').signature('clear'); 
     }); 
     $('#json').click(function() { 
      alert($('#sig').signature('toJSON')); 
     }); 
     $('#svg').click(function() { 
      alert($('#sig').signature('toSVG')); 
     }); 
     }(jQuery)); 
    }); 

}); 

最後包括在需要的指令。