Panel

  Panel控件是你的app中的独立内容的区域控件。它是af UI的核心。Panel div 元素实际上承载了app中你管理和显示的界面元素和内容。

创建panel控件是相当地容易的:在id为“content”的div元素中添加一个class设置为“panel”的新div元素,然后为其设置id属性和通过data-title属性设置其title。

对于panel控件,App Framework UI背后实现了很多魔法,比如添加滚动逻辑,修复Android平台上的bug,如果你不小心在content元素外面建立了一个panel控件,没关系afui会在framework启动的时候自动将它移动到content元素之中。

 

Panel控件还有很多属性,例如自动滚动的开关等等,请继续往下看。

Panel的属性和CSS属性

  你可以给panel的div元素添加属性来改变它的默认行为,修改一些CSS属性同样可能引起panel默认行为的变化而不仅仅是style改变那么简单。下面就是这些能够修改panel行为的CSS属性和元素属性:

  1. css property - overflow:hidden - 如果设置了此属性,这会禁止panel控件自动绑定scroller控件。这当panel控件需要自动扩展的时候,如作为carousel或者google map的时候。
  2. selected="true" - 设置后该panel就会成为app的默认页面。
  3. modal="true" - 这样设置将使panel成为模态窗口并占据所有的屏幕空间(也是可以通过CSS来调整的)。
  4. data-header="id" - 绑定某个id的header
  5. data-footer="id" - 绑定某个id的footer
  6. data-nav="id" -绑定某个id的左侧sidemenu (通过nav标签声明)
  7. data-aside="id" -绑定某个id的右侧sidemenu (通过aside标签声明)
  8. data-defer="filename.html" - 此声明将导致延迟装载某远端的url的内容到panel中。这在分离内容到不同文件中时很有用。只有所有的url内容都异步地load完成后,af.ui.ready事件才会被触发。
  9. data-tab="anchor_id" - 绑定panel到footer中的tab(a)的id。当你通过脚本而不是用户点击激活panel的时候很有用。
  10. data-load="func_name" - panel装载完成后执行的函数名称。div元素将会作为参数传递,因此你可以使用独立的函数,能够访问到其他属性。
  11. data-unload="func_name" - panel卸载后触发的函数名称。

记住,虽然你可以为panel添加任何的属性,但是以上这些属性是特定的属性,它们可以触发AFUI的特定逻辑处理。


以上是官网上的资料汇总,下面是我总结的一些要点:

页面之间的切换(现有页面panel)

  1. 启动之前,设置selected属性,选择默认页面
  2. 通过锚链接元素<a href="#panelid" ></a>,可以设置如下属性
    data-transition:切换动画
  3. 调用$.ui.loadContent(“#panelId”,newTab,goBack,transition)

    其参数意义:transition:要使用的切换动画,goBack:是否退回操作,是回退操作同时影响动画的方向。newTab:true会清空历史,只保留默认页

页面切换动画:

  • data-transition="slide" - 向左滑动,回退时向右滑动
  • data-transition="up" - 向上滑动,回退时向下
  • data-transition="down" - 向下滑动,回退时向上
  • data-transition="pop" - 弹出
  • data-transition="flip" - 沿Y轴翻滚
  • data-transition="fade" - 淡入淡出

【Intel AF 2.1 学习笔记二】AF中的页面——Panel的更多相关文章

  1. jQuery学习笔记(二)jQuery中DOM操作

    目录 DOM操作分类 jQuery中的各种DOM操作 查找节点 创建节点 删除节点 复制节点 替换节点 包裹节点 属性操作 样式操作 对HTML.文本和值的操作 遍历节点 CSS-DOM操作 小结 本 ...

  2. redis学习笔记(二)——java中jedis的简单使用

    redis怎么在java中使用,那就是要用到jedis了,jedis是redis的java版本的客户端实现,原本原本想上来就直接学spring整合redis的,但是一口吃个胖子,还是脚踏实地,从基础开 ...

  3. 鸟书shell 学习笔记(二) shell中正則表達式相关

    通配符与正則表達式的差别 通配符是bash原生支持的语法,正則表達式是处理字符串的一种表示方式, 正則表達式须要支持的工具支持才干够 语系设置 : export LANG=C grep alias 设 ...

  4. dubbo学习笔记(二)dubbo中的filter

    转:https://www.cnblogs.com/cdfive2018/p/10219730.html dubbo框架提供了filter机制的扩展点(本文基于dubbo2.6.0版本). 扩展接口 ...

  5. WPF的Binding学习笔记(二)

    原文: http://www.cnblogs.com/pasoraku/archive/2012/10/25/2738428.htmlWPF的Binding学习笔记(二) 上次学了点点Binding的 ...

  6. AJax 学习笔记二(onreadystatechange的作用)

    AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...

  7. HTML DOM(学习笔记二)

    嗯,在HTML DOM(学习笔记一)中简单描述了一下HTML DOM 是什么,这一篇将记录下来有关HTML DOM的内容! 1:DOM节点 首先,再来看一下HTML DOM的树状结构,如下图所示: 这 ...

  8. [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计

    源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...

  9. JMX学习笔记(二)-Notification

    Notification通知,也可理解为消息,有通知,必然有发送通知的广播,JMX这里采用了一种订阅的方式,类似于观察者模式,注册一个观察者到广播里,当有通知时,广播通过调用观察者,逐一通知. 这里写 ...

随机推荐

  1. Jenkins + Django 完整实战,细化到每一步操作

    Reference:  http://blog.csdn.net/GitChat/article/details/78271099?locationNum=3&fps=1 [不要错过文末彩蛋] ...

  2. vpnbook.py

    vpnbook提供免费的vpn服务,当然了,免费的肯定有限制,vpnbook的限制在于速度,一般只有10kb/s左右,用来看看网页还可以,当主力就不够了. 话说IE存在的意义就是用来下载其它浏览器,我 ...

  3. Mybatis之工作原理

    1.Mybatis的架构 1.1 Mybatis的框架分层 1.2 MyBatis的实现原理 mybatis底层还是采用原生jdbc来对数据库进行操作的,它支持定制化 SQL.存储过程以及高级映射的优 ...

  4. 关于IIS下字体跨域问题

    将网站的CSS与项目分离后报了一个错,是因为字体跨域的原因,查了一下资料. 解决方案如下: 1:打开访问的资源iis,在HTTP 响应表头中添加代码名称:Access-Control-Allow-Or ...

  5. 老项目Xcode5.1编译器错误

    老项目编译器错误html, body {overflow-x: initial !important;}html { font-size: 14px; } body { margin: 0px; pa ...

  6. JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!)

    JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!) 1.文件准备: 服务器:CentOS Linux release 7.3.1611 (Core)     Apa ...

  7. 问题解决:bash: fork: retry: Resource temporarily unavailable

    linux报错: bash: fork: retry: Resource temporarily unavailable 不管是执行什么 登陆不了服务器The server refused to st ...

  8. RavenDb学习(四)处理文档相关性

    RavenDb是文档型数据库,但是我们常常也需要定义对象之间的关系,那RavenDb当中是如何处理的呢? RavenDb提供了优雅的解决方式,使用正确的话,可以减少数据开销以及网络拥堵 Denorma ...

  9. PCL点云特征描述与提取(1)

    3D点云特征描述与提取是点云信息处理中最基础也是最关键的一部分,点云的识别.分割,重采样,配准曲面重建等处理大部分算法,都严重依赖特征描述与提取的结果.从尺度上来分,一般分为局部特征的描述和全局特征的 ...

  10. PCL库简要说明

    PCL(PointCloudLibrary)是在吸收了前人点云相关研究基础上建立起来的大型跨平台开源C++编程库,它实现了大量点云相关的通用算法和高效数据结构,涉及到点云获取.滤波.分割.配准.检索. ...