//添加监听事件
angular.module('MyApp').directive('gotTapped', ['$ionicGesture', function($ionicGesture) { return { restrict: 'A', link: function($scope, $element, $attr) { $ionicGesture.on('tap', function(e) { console.log('I got Tapped!') }, $element); } } }])
<div got-tapped>Tap Me!</div>
//选择元素 document.querySelector();
栗子:
<body ng-controller="MyCtrl" class="padding"> <div class="bar bar-header bar-positive"> <h1 class="title">{{lastEventCalled}}</h1> </div> <ion-content id="eventPlaceholder" has-bouncing="false"></ion-content> </body>
angular.module('ionicApp', ['ionic']) .controller('MyCtrl', function($scope, $ionicGesture, $window, $interval) { $scope.lastEventCalled = 'Try to Drag the content up, down, left or rigth'; var element = angular.element(document.querySelector('#eventPlaceholder')); var events = [{ event: 'dragup', text: 'You dragged me UP!' },{ event: 'dragdown', text: 'You dragged me Down!' },{ event: 'dragleft', text: 'You dragged me Left!' },{ event: 'dragright', text: 'You dragged me Right!' }]; angular.forEach(events, function(obj){ $ionicGesture.on(obj.event, function (event) { $scope.$apply(function () { $scope.lastEventCalled = obj.text; }); }, element); }); });
参考:http://codepen.io/shprink/pen/txliu/?editors=101