ionic的侧滑和下拉刷新效果

ionic side menu侧滑效果 ionic side menu侧滑效果demo 立即下载

一,侧滑效果

主要涉及到三个地方

1,菜单页面

主要分为主页面和侧滑页面两部分,又分别都包含顶部bar和主要内容部分

注意:主页面内容部分,关键的菜单内容name要对应到是菜单内容的页面(在app.js中,下面会贴出)

          item href的构成:1,#本页面  2,app本页面链接   3,todolist/{{menu.groupId}}列表页面链接(没有冒号)

<ion-side-menus>
  <!--主页面-->
  <ion-side-menu-content class="bar-positive">
    <!--主页面顶部bar-->
    <ion-nav-bar class="bar-positive">
      <ion-nav-back-button class="button-clear"><i class="icon ion-chevron-left"></i></ion-nav-back-button>
    </ion-nav-bar>
    <!--主页面内容 关键的菜单内容name要对应到是菜单内容的页面-->
    <ion-nav-view name="menuContent" animation="slide-left-right"></ion-nav-view>
  </ion-side-menu-content>
  <!--侧滑页面-->
  <ion-side-menu side="left">
    <!--侧滑页面顶部bar-->
    <ion-header-bar align-title="center" class="bar-dark">
      <h1 class="title">需求</h1>
      <div class="buttons pull-right" nav-clear menu-close ng-click="settings()">
        <button class="button button-icon icon ion-gear-b"></button>
      </div>
    </ion-header-bar>
    <!--侧滑页面主要内容-->
    <ion-content class="has-header">
      <ion-list>
        <!--item href的构成:1,#本页面  2,app本页面链接   3,todolist/{{menu.groupId}}列表页面链接(没有冒号)-->
        <ion-item nav-clear menu-close ng-repeat="menu in menus" href="#/app/todolist/{{menu.groupId}}">
        
          <i class="icon ion-android-clock"></i>  {{menu.title}} <span class="badge" ng-if="menu.badge>0">{{menu.badge}}</span>
        </ion-item>
      </ion-list>
    </ion-content>
    
  </ion-side-menu>
</ion-side-menus>

2,app.js

在配置页面记得,通过菜单内容页面的name,把菜单和菜单内容页关联起来

对于菜单页,设置的abstract: true,暂时作用是不可以跳转到此页面(即不可以跳转到menu.html)

angular.module('todo.io', ['ionic', 'todo.io.directives', 'todo.io.filters', 'todo.io.services', 'todo.io.controllers', 'nsPopover','LocalStorageModule','ngCordova'])

.run(function($ionicPlatform) {
  $ionicPlatform.ready(function() {
    if(window.cordova && window.cordova.plugins.Keyboard) {
      cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
    }
    if(window.StatusBar) {
      StatusBar.styleDefault();
    }
  });
})

.config(function($stateProvider, $urlRouterProvider) {
  $stateProvider

     .state('tutorial', {
        url: '/',
        templateUrl: 'templates/tutorial.html',
        controller: 'TutorialCtrl'
     })
     
     .state('sign', {
        url: '/sign',
        templateUrl: 'templates/sign.html',
        controller: 'SignCtrl'
     })

    .state('app', {
      url: "/app",
      abstract: true,
      templateUrl: "templates/menu.html",
      controller: 'AppCtrl'
    })


    //通过菜单内容页面的name,把菜单和菜单内容页关联起来
    .state('app.todolist', {
      url: "/todolist/:groupId",
      views: {
        'menuContent' :{
          templateUrl: "templates/todo_list.html",
          controller: 'TodolistsCtrl'
        }
      }
    })

    .state('app.todolistedit', {
      url: "/todolist/edit/:groupId",
      views: {
        'menuContent' :{
          templateUrl: "templates/todo_list_edit.html",
          controller: 'TodolistsEditCtrl'
        }
      }
    })

    .state('app.todoinfo', {
      url: "/todo/:todoId",
      views: {
        'menuContent' :{
          templateUrl: "templates/todo_info.html",
          controller: 'TodoCtrl'
        }
      }
    })

    .state('app.grouplist', {
      url: "/group",
      views: {
        'menuContent' :{
          templateUrl: "templates/group_list.html",
          controller: 'GrouplistCtrl'
        }
      }
    })

    .state('app.groupinfo', {
      url: "/group/:groupId",
      views: {
        'menuContent' :{
          templateUrl: "templates/group_info.html",
          controller: 'GroupCtrl'
        }
      }
    })

    .state('app.search', {
      url: "/search",
      views: {
        'menuContent' :{
          templateUrl: "templates/search.html",
          controller: 'SearchCtrl'
        }
      }
    })

    .state('app.settings', {
      url: "/settings",
      views: {
        'menuContent' :{
          templateUrl: "templates/settings.html",
          controller: 'SettingsCtrl'
        }
      }
    });

  $urlRouterProvider.otherwise('/');
});

3,菜单内容页面

主要就是关联菜单的button,设置此属性就行menu-toggle

<ion-nav-buttons side="left">
    <button menu-toggle="left" class="button button-icon icon ion-navicon-round"></button>
    <button class="button button-icon icon ion-refresh" ng-show="groupId==1" ng-click="refresh()"></button>
  </ion-nav-buttons>

效果图(电脑浏览器的,手机也一样)



二,下拉刷新

主要两部分控制部分和页面部分

1,页面部分

ion-refresher刷新控件,on-refresh设置刷新方法,还有下拉文字,刷新文字,下拉效果图

<html ng-app="ionicApp">

	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">

		<title>Ionic Pull to Refresh</title>

		<link href="//code.ionicframework.com/nightly/css/ionic.css" rel="stylesheet">
		<script src="//code.ionicframework.com/nightly/js/ionic.bundle.js"></script>
		<script type="text/javascript" src="js/new_file2.js"></script>
		<link rel="stylesheet" type="text/css" href="css/new_file.css" />

	</head>

	<body ng-controller="MyCtrl">

		<ion-header-bar class="bar-positive">
			<h1 class="title">Pull To Refresh</h1>
		</ion-header-bar>
        <!--ion-loading abcd四种效果-->        
		<ion-content>
			<ion-refresher on-refresh="doRefresh()"
			               pulling-text="Pull to refresh..." 
			               refreshing-text="Refreshing!"
			               refreshing-icon="ion-loading-b">
				
			</ion-refresher>
			<ion-list>
				<ion-item ng-repeat="item in items">{{item}}</ion-item>
			</ion-list>
		</ion-content>

	</body>

</html>

2,控制部分

主要就是控制完成刷新后,通知关闭刷新效果

angular.module('ionicApp', ['ionic'])

.controller('MyCtrl', function($scope, $timeout) {
  $scope.items = ['Item 1', 'Item 2', 'Item 3'];
  
  $scope.doRefresh = function() {
    
    console.log('Refreshing!');
    $timeout( function() {
      //simulate async response
      $scope.items.push('New Item ' + Math.floor(Math.random() * 1000) + 4);

      //Stop the ion-refresher from spinning
      $scope.$broadcast('scroll.refreshComplete');
    
    }, 1000);
      
  };
  
});

另外找到ionic的svg动画效果图,可是不知道怎么加入



代码html

<html ng-app="ionicApp">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">

    <title>Ionic Pull to Refresh</title>

    <link href="//code.ionicframework.com/nightly/css/ionic.css" rel="stylesheet">
    <script src="//code.ionicframework.com/nightly/js/ionic.bundle.js"></script>

    <link rel="stylesheet" type="text/css" href="css/new_file.css"/>
    <script type="text/javascript" src="js/new_file.js"></script>
  </head>
  <body ng-controller="MyCtrl">

    <ion-header-bar class="bar-positive">
      <h1 class="title">Animated SVGs</h1>
    </ion-header-bar>

    <ion-content>
      <p>
        <ion-spinner icon="android" ></ion-spinner>
        <ion-spinner icon="ios"></ion-spinner>
        <ion-spinner icon="ios-small"></ion-spinner>
        <ion-spinner icon="bubbles" class="spinner-balanced"></ion-spinner>
        <ion-spinner icon="circles" class="spinner-energized"></ion-spinner>
      </p>

      <p>
        <ion-spinner icon="crescent" class="spinner-royal"></ion-spinner>

        <ion-spinner icon="dots" class="spinner-dark"></ion-spinner>
        <ion-spinner icon="lines" class="spinner-calm"></ion-spinner>
        <ion-spinner icon="ripple" class="spinner-assertive"></ion-spinner>
        <ion-spinner icon="spiral"></ion-spinner>
      </p>


    </ion-content>

  </body>
</html>


css
body {
  cursor: url('http://ionicframework.com/img/finger.png'), auto;
}    
p {
   text-align: center;
   margin-bottom: 40px !important;
}
.spinner svg {
  width: 19% !important;
  height: 85px !important;
}

例1代码下载 http://download.youkuaiyun.com/detail/superjunjin/8562153

例2代码下载 http://download.youkuaiyun.com/detail/superjunjin/8562139






PostgreSQL使用 pg_rman物理备份搭建流复制备库(streaming replication standby) 摘要:使用pg_rman备份搭建PostgreSQL流复制备库 本文详细介绍了利用pg_rman工具快速搭建PostgreSQL流复制备库的完整流程。该方法结合物理备份的高效性和流复制的实时性,特别适合大型数据库环境。主要内容包括:主库上的pg_rman安装配置、全量备份操作;备份文件传输至备库;备库数据目录准备及恢复;流复制参数配置;以及最终的启动验证步骤。文章还提供了架构示意图和关键配置示例,并包含常见问题排查建议,如备库无法启动或复制卡顿情况的处理方法。整个流程强调通过.pgpass文件管理密码的安全 阅读详情

相关推荐

微波无源器件 功分器1 新型方波导双模无功功分器

本名证明了一种基于有着特定功能的(dedicated)T性匹配元件(散射件)的进化结点的新型波导双模两路功分器的可行性。这个散射件,有着面向三个部分的匹配部分,提供了等效功分并且朝着对应的输出端口传输矩形波导的两个TE10/TE01正交模式。所提出的设计紧凑,易于比例变化并且能够级联来获得。

qq_45245770的博客 1390

AngularJS+页面切换+侧滑

html> html lang="en"> head> meta charset="UTF-8"> title>Titletitle> style> *{ margin: 0 auto; } body{ position: relative; }

Logitech12的博客 1585

企业级AI Agent平台建设方案

本报告将深入剖析构成一个顶级AI Agent平台的各个功能层面,为构建者提供一份全面的战略蓝图。

分享AI和大数据领域的知识和研究 1581

angular ionic 侧滑

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script src="js/ionic.bundle.min.js" type="text/javascript" charset="utf-8"></script> <link rel

xiaozhang0414的博客 333

51单片机独立按键控制LED(二)

对于机械开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开,所以在开关闭合及断开的瞬间会伴随一连串的抖动。独立按键控制LED显示二进制。独立按键控制LED灯亮灭。独立按键控制LED状态。独立按键控制LED移位。

m0_50562428的博客 5381

CNN经典网络模型(二):AlexNet简介及代码实现(PyTorch超详细注释版)

CNN经典网络模型之一:AlexNet,本文包含其简介及代码,在PyTorch中实现,进行超详细注释,适合新生小白阅读学习~

qq_43307074的博客 2万+

angularJs自定义实现侧滑指令

老样纸,先上图:先上代码:html模板代码:&lt;div class="slide-item-wrapper"&gt; &lt;div class="slide-item" ref="slide"&gt; &lt;div class="content" ref="content"&gt;

martsforever的博客 920

机器人示教器方案昆仑通态脚本实现( 三菱FX3U+昆仑通态3轴联动))

项目应用场景:最终客户需要自由的修改程序流程,如检测什么信号,多少时间,再进入下一步,轴定位轨迹可以自由修改,方便最终可以在不修改PLC程序的情况下,自由示教程序。3.指令数量可以自行添加,在内存足够的情况下,无限制,只需要在PLC框架里面写好每个指令执行的内容就可以了,不需要在程序里面重复写相同类容;4.模板有延时指令,输入指令,输出指令,伺服定位指令,焊钳控制指令,自动修磨指令,转矩模式指令,结束指令等(可自行添加);1.有类似示教器编程功能,可以任意位置插入指令,可以任意位置删除指令;

huanyuecuiyu的博客 969

ionic3 ion-select

//默认是alert弹窗 &lt;ion-select &gt; &lt;/ion-select&gt; //下拉形式的 &lt;ion-select interface="popover"&gt; &lt;/ion-select&gt;

qq_38316493的博客 3740

使用Mask2Former和X-Decoder训练自定义数据集及结果复现报告

本报告记录了使用MMDetection框架中的Mask2Former和X-Decoder模型在自定义数据集上的训练过程。报告包含环境配置、数据集准备、模型训练与优化(解决了Mask2Former的PQ值异常问题)、性能评估等关键环节。详细展示了从数据集转换(将客户提供的COCO格式数据适配MMDetection框架)、配置文件修改、到最终模型训练和评估的全流程。特别针对Mask2Former训练中的PQ值异常问题提供了解决方案,并对比了两种模型在自定义数据集上的表现。报告还包含完整的代码实现和技术细节。

huanghm88的专栏 1087

Gemini-CLI 登录失败?解决报错 This account requires setting the GOOGLE_CLOUD_PROJECT env var 的问题

🚀 刚装好 `gemini-cli` 就遇到登录拦路虎?别慌!本文带你深入解析 `GOOGLE_CLOUD_PROJECT` 环境变量错误的根源,并提供超详细的图文解决方案,让你丝滑开启 AI 命令行之旅!快来抄作业!✍️

XiaoqiangClub的博客 5135

ionic-----下拉 三布局可点选

angular.module('ionicApp', ['ionic'])                 .controller('RootCtrl', function($scope) {                     $scope.onControllerChanged = function(oldController, oldIndex, newController, new

Guiyide的博客 383

深度解析:LPDDR5 采样 Mask 背后的秘密 —— 从 Jitter 到 BER 全面剖析

在 LPDDR5 中,CK/DQS 信号相当于“指挥棒”,而数据(DQ)要在时钟节拍里被准确采样。Crosspoint Mask 区域横轴:时间 (Time)纵轴:电压 (Vref)👉 只要采样点落在这个区域内,数据就是正确的。否则就会出错。BERPBERPMask 就像高速公路的收费站口,如果车(采样点🚗)在车道内,顺利通过;一旦跑偏,就撞护栏。LPDDR5 的速率极高,UI 非常短,Mask 区域成为核心指标各种 Jitter、Noise 会不断压缩 Mask。

weixin_43199439的博客 354

ionic 简单应用下拉刷新 选项卡栏操作 滚动条

!DOCTYPE html> //下拉刷新                                                                                                                                                              

XiaoZhuang__的博客 463

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

ionic 解析json串 带(路由 侧拉 效果 上拉刷新 下拉加载)

先上图看效果: 上代码  ,一般都是 按顺序上代码的 : html> html lang="en"> head> meta charset="UTF-8"> title>Titletitle> meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-

下午茶的博客 1351

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

mui框架

MPAS混合模式前端框架分析: 一、MUI 框架(前端UI框架) (一)MUI框架介绍与优劣势分析: 1.MUI基本介绍 MUI是一套前端框架,由DCLOUD公司研发而成,提供大量H5和js语言组成的组件,大大提高了开发效率,可以用于开发web端应用、web APP、混合开发等应用。利用MUI框架,用户在使用APP时可以得到接近原生APP的操作体验。 2.优缺点分析 作者:Leo扶风 来源:CSD...

qq_27451741的博客 3719

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

MUI产品概述

MUI为何诞生 性能和体验的差距,一直是mobile app开发者放弃HTML5的首要原因。  浏览器天生的切页白屏、不忍直视的转页动画、浮动元素的抖动、无法流畅下拉刷新、侧滑抽屉卡顿等问题,这些都让HTML5开发者倍感挫败,尤其拿到Android低端机运行,摔手机的心都有; 另一方面,浏览器默认控件样式又少又丑,制作一个漂亮的控件非常麻烦,也有一些制作简单的ui框架但性能低下。...

jiaonizuoren的博客 435

MUI框架使用指南

MPAS混合模式前端框架分析: 一、MUI 框架(前端UI框架) (一)MUI框架介绍与优劣势分析: 1.MUI基本介绍 MUI是一套前端框架,由DCLOUD公司研发而成,提供大量H5和js语言组成的组件,大大提高了开发效率,可以用于开发web端应用、web APP、混合开发等应用。利用MUI框架,用户在使用APP时可以得到接近原生APP的操作体验。 2.优缺点分析 优势: 目前的A...

Leo扶风的博客 1万+

大前端完整学习路线(详解)

大前端完整学习路线(详解) 第一阶段: HTML+CSS: HTML进阶、CSS进阶、div+css布局、HTML+css整站开发、 JavaScript基础: Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。 JS基本特效: 常见特效、例如:tab、导航、整页滚动、轮播图、JS制作幻灯片

麻子、你高了博客 15万+

前端要怎么学,前端学习路线图

前端学习路线图 第一阶段: HTML+CSS: HTML进阶、CSS进阶、div+css布局、HTML+css整站开发、 JavaScript基础: Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。 JS基本特效: 常见特效、例如:tab、导航、整页滚动、轮播图、JS制作幻灯片、弹出层、手风琴菜单、瀑布流布局、滚动事件、滚差视图。 J...

手牵手科技 1万+

前端学习分为几个阶段,你属于哪个阶段?

第一阶段:HTML+CSS: 感兴趣的可以加入前端自学交流群:1145459155 HTML进阶、CSS进阶、div+css布局、HTML+css整站开发、 JavaScript基础:Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。 JS基本特效:常见特效、例如:tab、导航、整页滚动、轮播图、JS制作幻灯片、弹出层、手风琴菜单、瀑布流布局、滚动事件、滚差视图。 JS高级特征:正则表达式、排序算法、递归算法、闭包、函数节流、作用域链、基于距离运

qq_36272264的博客 5886

前端工程师学习路线

前端工程师学习路线 第一阶段 html+css html进阶、css进阶、div+css布局、html+css整站开发 JS基础 js基础教程、js内置对象常用方法、常见dom树操作大全、ES、DOM、BOM、定时器和焦点图 JS基本特效 常见特效:tab、导航、页面滚动、轮播图、JS制作幻灯片、淡出层、手风琴菜单、瀑布流布局、滚动事件、滚差视图。 ...

前端笔记 4508

如何学习web开发环境搭建和脚手架

Web前端的学习路线 第一阶段: HTML+CSS: HTML进阶、CSS进阶、div+css布局、HTML+css整站开发、 JavaScript基础: Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。 JS基本特效: 常见特效、例如:tab、导航、整页滚动、轮播图、JS制作幻...

weixin_30740581的博客 179

Web前端学习路线

第一阶段: HTML+CSS+JavaScript 1、HTML+CSS HTML进阶、CSS进阶、div+css布局、HTML+css整站开发 2、JavaScript基础 Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。 3、JS基本特效 常见特效、例如:tab、导航、整页滚动、轮播图、JS制作幻灯片、弹出层、手风琴菜单、...

ronikimi的博客 236

【最新发布】最新web前端学习路线,值得收藏

前端这块算是比较简单,也比较有意思的,下面发布最新前端要学的九大阶段,大家可以根据自己的情况循序渐进的学习【总共9段】 第一阶段: HTML+CSS:HTML、CSS基础、div+css布局 JavaScript基础:Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时 器和焦点图。 如果看代码觉得乏味不够形象,最好看讲解比较生动的视频...

dachengxuyuan的博客 1108

前端大神是如何一步步学习进阶的?

第一阶段: HTML CSS:HTML进阶、CSS进阶、div css布局、HTML css整站开发。JavaScript基础:Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。JS基本特效:常见特效、例如:tab、导航、整页滚动、轮播图、JS制作幻灯片、弹出层、手风琴菜单、瀑布流布局、滚动事件、滚差视图。JS高级特征:正则表达式、排序算法、递归算法、闭包、函数节流、作用域链、基于距离运动框架、面向对象基础。JQuery:基础使用...

weixin_45147894的博客 858
上一篇: android项目的.project文件
下一篇: Android 开源框架Universal-Image-Loader实例分析
superjunjin
博客等级 码龄17年 600粉丝 133原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值