jw-ngclipboard
Version:
Angularjs directive for clipboard.js
46 lines (40 loc) • 1.25 kB
JavaScript
(function() {
'use strict';
var MODULE_NAME = 'ngclipboard';
var angular, Clipboard;
// Check for CommonJS support
if (typeof module === 'object' && module.exports) {
angular = require('angular');
Clipboard = require('clipboard');
module.exports = MODULE_NAME;
} else {
angular = window.angular;
Clipboard = window.Clipboard;
}
angular.module(MODULE_NAME, []).directive('ngclipboard', function() {
return {
restrict: 'A',
scope: {
ngclipboardSuccess: '&',
ngclipboardError: '&'
},
link: function(scope, element) {
var clipboard = new Clipboard(element[0]);
clipboard.on('success', function(e) {
scope.$apply(function () {
scope.ngclipboardSuccess({
e: e
});
});
});
clipboard.on('error', function(e) {
scope.$apply(function () {
scope.ngclipboardError({
e: e
});
});
});
}
};
});
})();