说到深层链接(Deep linking),少不了要讲一讲Flex 2中的HistoryManager。利用HistoryManager,用户可以使用Web 浏览器的后退和前进导航按钮在Flex 应用程序中导航,与Flex 3中的BrowserManager功能相似。
通常情况下,应使用BrowserManager类和深层链接来维护Flex 应用中的状态并处理URL和浏览器历史记录。但有些导航器容器(如Accordion和TabNavigator )默认情况下启用历史记录管理功能,因此这种情况下会比使用BrowserManager简单。但对于其他组件和容器,我们需要自定义历史记录管理,相对复杂,因此更多时候不使用HistoryManager类。
我们可通过将上述导航器容器的historyManagementEnabled
属性设置为false
来禁用历史记录管理。要向HistoryManager 类注册一个组件,需要调用HistoryManager 类的 register()
方法,还必须实现 IHistoryManagerClient 接口的saveState()
和loadState()
方法。
点击查看实例效果,点击下载该实例源码。
创建自定义列表框后,我们必须向HistoryManager类注册其实例。一般是在creationComplete事件处理函数中注册,如下面的代码:
creationComplete="mx.managers.HistoryManager.register(this);"
IHistoryManagerClient接口要求在列表框中实现saveState和loadState方法。当该列表框的选项一更改,将调用listChanged方法,该方法会调用HistoryManager的save方法来保存用户当前选择的哪一选项。保存完成后会调用saveState方法,而该方法将返回一个对象来保存浏览器记录。在本例中,saveState方法返回属性为selectedIndex的对象,该属性值等于自定义列表框的选项索引。
当使用后退和前进导航按钮更改浏览器历史记录时,将调用loadState方法。该方法从State参数对象中读取 selectedIndex属性值并更改列表框的selectedIndex属性。
从本例也可以看出,使用HistoryManager和BrowserManager进行深层链接时,浏览器URL片段是不同的。前者会自动添加app参数,app参数值及其它参数名的前缀(状态ID)都是16进制压缩的字符串。注意HistoryManager是用&来分隔URL片段中的名称=值对。
引用地址:http://www.riafan.com/article.asp?id=143
分享到:
相关推荐
EasyUI accordion导航自动生成JS
1. **TabNavigator组件**:TabNavigator是Flex中的一种容器,继承自Accordion类,用于组织和展示多个子组件,这些子组件可以通过可见的选项卡进行访问。默认情况下,选项卡位于组件的顶部,并水平排列。 2. **定制...
这样,当数据集发生变化时,Accordion会自动更新。 7. **性能优化**:由于动态生成可能会导致大量的UI元素,注意优化性能,比如延迟加载内容、虚拟化技术(只渲染可见的AccordionItem)等。 总结,Silverlight 4的...
这行代码会在页面加载完成后自动执行,将ID为"accordion"的元素转化为Accordion菜单。默认情况下,第一个`<div>`会被展开,其余的都是关闭状态。你可以通过设置选项来自定义Accordion的行为,比如改变默认展开项、...
"Accordion"在IT行业中通常指的是一个用户界面元素,它是一种可折叠的内容区域,常用于网页设计和应用程序中。这种设计模式允许用户展开或关闭各个部分,以显示或隐藏详细信息,从而节省空间并提高交互性。它在网页...
Accordion控件是网页设计中常用的一种交互元素,它允许用户以折叠的方式查看和隐藏内容,通常用于节省页面空间并提供良好的用户体验。动态制作Accordion控件意味着我们不是在页面静态加载时预定义这些菜单项,而是在...
**Accordion Panel**,也被称为手风琴效果,是一种常见的用户界面设计元素,广泛应用于网站、应用程序和各种交互式媒体中。这种效果允许用户在有限的空间内展开和折叠多个内容区域,以此来展示或隐藏详细信息。它...
**jQuery和CSS3半透明垂直Accordion特效详解** Accordion特效在网页设计中被广泛使用,它是一种可折叠的面板集合,用户可以逐个展开或关闭这些面板以查看或隐藏内容。在本项目中,我们将深入探讨如何利用jQuery库和...
Ajax,即Asynchronous JavaScript and XML(异步JavaScript和XML),是一种创建动态网页的技术,允许在不重新加载整个页面的情况下更新部分网页内容。Accordion控件则是这种技术的一个体现,它提供了一种折叠式的...
通过理解其基本原理和属性,开发者可以灵活地在网页设计中运用Accordion,创建出更加动态和交互性的内容展示。同时,源代码的学习可以帮助我们更好地掌握其实现方式和细节,从而在实际项目中游刃有余。
现在,关于jQuery Accordion的树形菜单栏扩展,我们可以结合使用jQuery UI的Accordion和Treeview插件。Treeview用于展示层次化的数据,而Accordion则提供折叠效果。在HTML结构中,我们需要添加额外的类名和属性来...
JavaScript Accordion 是一种常见的网页交互元素,用于展示和隐藏内容,通常用于节省页面空间并保持内容的整洁。这种效果在网站上广泛应用于导航菜单、FAQs 和详细信息展示等场景。在本文中,我们将深入探讨...
在网页设计和开发中,jQuery Accordion 是一种常见的交互元素,它通过折叠和展开的方式组织内容,使得用户能够更高效地浏览和导航。这个技术基于流行的JavaScript库jQuery,以其简洁的API和强大的功能赢得了开发者们...
当用户点击标题时,相应的内容区域会以平滑的动画效果展开,同时其他所有展开的面板都会自动收起,保持界面的整洁和焦点。这种功能对于构建层次结构清晰的多级导航非常有用,特别是在内容较多且需要分组展示的情况下...
5. **响应式设计**:Bootstrap Accordion天生支持响应式布局,这意味着在不同设备和屏幕尺寸上,手风琴选项卡会自动调整其显示方式,以适应用户浏览。开发者可以利用Bootstrap的网格系统和其他响应式工具进一步优化...
3. **自动调整大小**:当用户展开或折叠面板时,Accordion会自动调整其高度以适应内容。这确保了整个页面布局的整洁和一致性。 4. **可配置的动画效果**:Accordion支持平滑的动画过渡效果,如渐变、滑动等,使得...
"accordion0.96.zip" 是一...总之,"accordion0.96.zip"为Delphi开发者提供了一种实现折叠面板效果的工具,通过理解和应用这个组件,开发者可以创建出更直观、更易用的用户界面,提高其Delphi应用程序的品质和吸引力。
`accordion-item`通常设置为垂直堆叠,使用`display: flex`和`flex-direction: column`。 2. **隐藏内容**:默认情况下,所有`accordion-content`应该被隐藏,可以使用`display: none`实现。当对应的`accordion-...
开发者可能会使用`accordion('activate', index)`方法来激活特定的菜单项,或者使用`accordion('option', optionName, value)`来更改accordion的配置,例如设置是否允许多选(multiExpand)、是否自动激活第一个项...
本文将深入探讨jQuery Accordion的源码,帮助开发者理解其工作原理,以便于自定义和优化。 一、Accordion组件的基本结构 Accordion组件的核心是HTML结构,通常由一系列的`<div>`元素组成,每个`<div>`代表一个面板...