最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

AngularJS ionic手勢事件的使用總結(jié)

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:33:06
文檔

AngularJS ionic手勢事件的使用總結(jié)

AngularJS ionic手勢事件的使用總結(jié):這兩天學(xué)習(xí)了AngularJS手勢事件感覺這個(gè)地方知識點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。 長按 : on-hold 在屏幕同一位置按住超過500ms,將觸發(fā)on-hold事件: 你可以在任何元素上使用這個(gè)指令掛接監(jiān)聽函數(shù): <any on-hold
推薦度:
導(dǎo)讀AngularJS ionic手勢事件的使用總結(jié):這兩天學(xué)習(xí)了AngularJS手勢事件感覺這個(gè)地方知識點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。 長按 : on-hold 在屏幕同一位置按住超過500ms,將觸發(fā)on-hold事件: 你可以在任何元素上使用這個(gè)指令掛接監(jiān)聽函數(shù): <any on-hold

這兩天學(xué)習(xí)了AngularJS手勢事件感覺這個(gè)地方知識點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。

長按 : on-hold

在屏幕同一位置按住超過500ms,將觸發(fā)on-hold事件:

 你可以在任何元素上使用這個(gè)指令掛接監(jiān)聽函數(shù):

<any on-hold=“…”>…</any>

示例代碼:

<body ng-controller=”ezCtrl”>
<ion-header-bar class=”bar-positive” on-hold=”show_delete();”>
<h1 class=”title”>on-hold</h1>
</ion-header-bar>
<ion-content>
<ion-list ng-repeat=”item in items”>
<ion-item>
{{item}}
<ion-delete-button class=”ion-minus-circled”></ion-delete-button>
<ion-reorder-button class=”ion-navicon”></ion-reorder-button>
</ion-item>
</ion-list>
</ion-content>
<ion-footer-bar class=”bar-positive”></ion-footer-bar>
</body>

js:

angular.module(“ezApp”,[“ionic”])
.controller(“ezCtrl”,function($scope, $ionicListDelegate) {
$scope.items=[“China”,”Japan”,”India”,”Russian”];
$scope.show_delete = function(){
$ionicListDelegate.showDelete(true);
};
});

敲擊 : on-tap

在屏幕上快速點(diǎn)擊一次(停留時(shí)間不超過250ms),將觸發(fā)on-tap事件:

可以在任何元素上使用這個(gè)指令掛接事件監(jiān)聽函數(shù):

<any on-tap=“…”>…</any>

示例代碼:

<head>
<meta name=”viewport” content=”initial-scale=1,maximum-scale=1,user-scalable=no,width=device-width,height=device-height”>
<script src=”ionic.bundle.min.js”></script>
<link rel=”stylesheet” type=”text/css” href=”ionic.min.css”>
</head>
<body ng-controller=”ezCtrl”>
<ion-header-bar class=”bar-positive”>
<h1 class=”title”>on-tap</h1>
</ion-header-bar>
<ion-content>
<ion-list ng-repeat=”item in items”>
<ion-item on-tap=”show(item);”>
{{item}}
<ion-reorder-button class=”ion-navicon”></ion-reorder-button>
</ion-item>
</ion-list>
</ion-content>
</body>

js:

angular.module(“ezApp”,[“ionic”])
.controller(“ezCtrl”,function($scope, $ionicPopup) {
$scope.items=[“England”,”Japan”,”India”,”Russian”];
$scope.show = function(item){
$ionicPopup.alert({
title : “警告!”,
template : “為什么要敲 “+ item + “?”
});
};
});

雙擊 : on-double-tap
在屏幕上快速敲擊兩次,將觸發(fā)on-double-tap事件:

可以在任何元素上使用這個(gè)指令掛接事件監(jiān)聽函數(shù):

<any on-double-tap=“…”>…</any>

示例代碼:

<body ng-controller=”ezCtrl”>
<ion-header-bar class=”bar-positive” on-double-tap=”title='I am double tapped!'”>
<h1 class=”title”>{{title}}</h1>
</ion-header-bar>
<ion-content>
<p ng-include=”‘txt/xiyouji.txt'”></p>
</ion-content>
</body>

js:

angular.module(“ezApp”,[“ionic”])
.controller(“ezCtrl”,function($scope) {
$scope.title = “on-double-tap”;
});

按下/松開 on-touch/on-release

在屏幕上按下手指或鼠標(biāo)鍵時(shí),會立即觸發(fā)on-touch事件;當(dāng)手指抬起或鼠標(biāo)鍵松開時(shí), 會立即觸發(fā)on-release事件。

可以在任何元素上掛接響應(yīng)的事件監(jiān)聽函數(shù):

<any on-touch=“…” on-release=“…”>…</any>

示例代碼:

<body ng-controller=”ezCtrl”>
<ion-header-bar class=”bar-positive” ng-class=”[style]”
on-touch=”style='bar-assertive'” on-release=”style='bar-positive'”>
<h1 class=”title”>on-touche/on-release</h1>
</ion-header-bar>
<ion-content>
<img src=”img/0021.png”>
</ion-content>
</body>

js:

angular.module(“ezApp”,[“ionic”])
.controller(“ezCtrl”,function($scope) {
});

拖拽 : on-drag

在屏幕上按住并移動(dòng)時(shí),觸發(fā)on-drag拖拽事件: 

根據(jù)運(yùn)動(dòng)方向的不同,可以細(xì)分為以下幾種事件:

  • on-drag – 向所有方向拖動(dòng)時(shí)都觸發(fā)此事件
  • on-drag-up – 向上拖動(dòng)時(shí)觸發(fā)此事件
  • on-drag-down – 向下拖動(dòng)時(shí)觸發(fā)此事件
  • on-drag-left – 向左拖動(dòng)時(shí)觸發(fā)此事件
  • on-drag-right – 向右拖動(dòng)時(shí)觸發(fā)此事件
  • 可以在任意元素上使用這些指令掛接對應(yīng)的事件監(jiān)聽函數(shù):

    <any on-drag=“…”>…</any>

    示例代碼:

    <body ng-controller=”ezCtrl”>
    <ion-header-bar class=”bar-positive”>
    <h1 class=”title”>on-drag</h1>
    </ion-header-bar>
    <div class=”scroll-content has-header padding”>
    <img src=”img/baymax.png” on-touch=”onTouch($event)” on-drag=”onDrag($event);”>
    </div>
    </body>

    js:

    angular.module(“ezApp”,[“ionic”])
    .controller(“ezCtrl”,function($scope) {
    var ox,oy;
    $scope.onTouch = function($event){
    ox = $event.target.offsetLeft;
    oy = $event.target.offsetTop;
    };
    $scope.onDrag = function($event){
    var el = $event.target,
    dx = $event.gesture.deltaX,
    dy = $event.gesture.deltaY;
    el.style.left = ox + dx + “px”;
    el.style.top = oy + dy + “px”;
    };
    });

    劃動(dòng) : on-swipe

    在屏幕上按住并快速拖動(dòng)時(shí),將觸發(fā)on-swipe劃動(dòng)事件:

    根據(jù)劃動(dòng)方向的不同,可細(xì)分為以下指令:

  • on-swipe – 向任何方向的劃動(dòng)都觸發(fā)事件
  • on-swipe-up – 向上劃動(dòng)時(shí)觸發(fā)事件
  • on-swipe-down – 向下劃動(dòng)時(shí)觸發(fā)事件
  • on-swipe-left – 向左劃動(dòng)時(shí)觸發(fā)事件
  • on-swipe-right – 向右劃動(dòng)時(shí)觸發(fā)事件
  • 可以在任何元素上使用這些指令掛接事件監(jiān)聽函數(shù):

    <any on-swipe=“…”>…</any>

    示例代碼:

    <body ng-controller=”ezCtrl”>
    <div class=”scroll-content padding”
    on-swipe-up=”onSwipeUp()”
    on-swipe-down=”onSwipeDown()”
    on-swipe-left=”onSwipeLeft()”
    on-swipe-right=”onSwipeRight()”>
    <p class=”padding”>按住鼠標(biāo)快速劃!</p>
    <i class=”icon {{icon}}”></i>
    </div>
    </body>

    js:

    angular.module(“ezApp”,[“ionic”])
    .controller(“ezCtrl”,function($scope){
    $scope.icon=”ion-arrow-expand”;
    $scope.onSwipeUp = function(){
    $scope.icon=”ion-arrow-up-a”;
    };
    $scope.onSwipeDown = function(){
    $scope.icon=”ion-arrow-down-a”;
    };
    $scope.onSwipeLeft = function(){
    $scope.icon=”ion-arrow-left-a”;
    };
    $scope.onSwipeRight = function(){
    $scope.icon=”ion-arrow-right-a”;
    };
    });
    
    

    腳本接口 : $ionicGesture

    除了使用之前介紹的特定指令實(shí)現(xiàn)手勢事件的監(jiān)聽,也可以使用$ionicGesture服務(wù) 注冊/解除手勢事件監(jiān)聽:

    on(eventType,callback,$element,options) – 注冊手勢事件監(jiān)聽函數(shù)

    參數(shù)eventType是支持的事件類型,參看下面介紹;參數(shù)callback指定監(jiān)聽函數(shù); 參數(shù)$element是要綁定事件的jqLite元素。

    on()方法返回的是一個(gè)ionic.gesture對象,可供解除監(jiān)聽用。

    off(gesture,eventType,callback) – 解除手勢事件監(jiān)聽函數(shù)

    參數(shù)gesture是on()方法返回的結(jié)果對象,參數(shù)callback是要移除的監(jiān)聽函數(shù)。

    $ionicGesture服務(wù)支持的事件類型有:

    hold, tap, doubletap, drag, dragstart, dragend, dragup, dragdown, dragleft, dragright, swipe, swipeup, swipedown, swipeleft, swiperight, transform, transformstart, transformend, rotate, pinch, pinchin, pinchout, touch, release

    示例代碼:

    <body ng-controller=”ezCtrl”>
    <ion-header-bar class=”bar-positive”>
    <h1 class=”title”>$ionicGesture</h1>
    </ion-header-bar>
    <ion-content class=”padding”>
    <button class=”button” id=”test”>test</button>
    </ion-content>
    </body>

    js:

    angular.module(“ezApp”,[“ionic”])
    .controller(“ezCtrl”,function($scope,$ionicGesture,$ionicPopup) {
    var el = document.querySelector(“#test”);
    $ionicGesture.on(“tap”,function(){
    $ionicPopup.alert({
    title : “提醒”,
    template : “這個(gè)監(jiān)聽是用$ionicGesture服務(wù)注冊的!”
    })
    },angular.element(el));
    });

    聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    AngularJS ionic手勢事件的使用總結(jié)

    AngularJS ionic手勢事件的使用總結(jié):這兩天學(xué)習(xí)了AngularJS手勢事件感覺這個(gè)地方知識點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。 長按 : on-hold 在屏幕同一位置按住超過500ms,將觸發(fā)on-hold事件: 你可以在任何元素上使用這個(gè)指令掛接監(jiān)聽函數(shù): <any on-hold
    推薦度:
    標(biāo)簽: 手勢 使用 用法
    • 熱門焦點(diǎn)

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top