UNPKG

ionic-angular

Version:

[![Circle CI](https://circleci.com/gh/driftyco/ionic.svg?style=svg)](https://circleci.com/gh/driftyco/ionic)

49 lines (42 loc) 1.18 kB
IonicModule .config(['$provide', function($provide) { $provide.decorator('ngClickDirective', ['$delegate', function($delegate) { // drop the default ngClick directive $delegate.shift(); return $delegate; }]); }]) /** * @private */ .factory('$ionicNgClick', ['$parse', function($parse) { return function(scope, element, clickExpr) { var clickHandler = angular.isFunction(clickExpr) ? clickExpr : $parse(clickExpr); element.on('click', function(event) { scope.$apply(function() { clickHandler(scope, {$event: (event)}); }); }); // Hack for iOS Safari's benefit. It goes searching for onclick handlers and is liable to click // something else nearby. element.onclick = noop; }; }]) .directive('ngClick', ['$ionicNgClick', function($ionicNgClick) { return function(scope, element, attr) { $ionicNgClick(scope, element, attr.ngClick); }; }]) .directive('ionStopEvent', function() { return { restrict: 'A', link: function(scope, element, attr) { element.bind(attr.ionStopEvent, eventStopPropagation); } }; }); function eventStopPropagation(e) { e.stopPropagation(); }