Essential controls for web app

  1. AUTO-COMPLETE/AUTO-SUGGEST

    Auto-complete using Vaadin

    Offer auto-suggest or auto-complete to help your users increase efficiency and reduce errors. You can even create a grouped and formatted set of suggestionslike Apple does.

  2. CAROUSEL/COVERFLOW

    Carousel by Moving Boxes

    Controls for sliding content include carousels, coverflows, sliders, and slideshows and are available in almost every framework. JQuery has a variety of plugins for many different variations of the simple carousel. All of these variations provide a nice solution for browsing and reviewing visual content. Remember to offer a stop or pause button if you implement auto-play.

  3. CALENDAR/SCHEDULER

    Telerik RadScheduler for Silverlight

    Need a full blown event scheduler? You do not want to ask your development team to code one of these beasts from scratch.

    There are a number of functional Ajax ones available, all of which could benefit from some CSS love. Flex, OpenLaszlo and Telerik Rad Controls for Silverlight now have this control too.

  4. CHARTS AND GRAPHS

    Flash charts on Discover Spend Analyzer

    Some frameworks include charts, like Ext JS, Flex, Telerik, and SmartClient. But I have resorted to Flash charting libraries to create really rich experiences. Popular libraries include AnyChartDundasJFreeChartamChartsVisifire for Silverlight. Lists of chart libraries are available: 28 on InsideRIA, and 70+ on TripWire. See ‘Sparklines’ for micro-charts.

  5. COLLAPSIBLE PANELS

    Inlay panel on the BBC

    Lots of controls fall in this category including: page slides, inlay and overlay panels, accordions, and collapsible panels that allow for more than one section to be expanded at a time. These controls provide a slick alternative to dialogs.MintSproutBuilder and SlideRocket all have great examples to explore.

  6. COMBOBOX: MULTISELECT

    asmSelect, a JQuery plugin

    Instead of displaying an ocean of checkboxes, or a cumbersome ctrl+shift+click list box, use a control that lets users see what they have selected. This control works and fits wonderfully in pages with filter criteria on the right and results on the right. None of the frameworks offer this control yet, but there is this jQuery plugin.

  7. DATE PICKER: ADVANCED

    MooTools Plugin

    You may encounter a scenario where the standard date picker is not enough. Many of these frameworks support one or more advanced features for the date picker control including: date range selection, date and time, multi-month views, and excluded dates.

  8. DIAGRAMMER

    KapIT Diagrammer

    An advanced control for letting uses construct diagrams, like flow charts, organization maps, process diagrams, etc. yFiles has versions for Flex,
    .Net and Ajax. And KapITLabshas a Flex/Flash version available.

  9. DIALOG

    Picnik Modeless Dialog

    There are also many variations on the simple dialog control: the lightbox, modal dialogs, modeless dialogs, and hover dialogs (see ‘Hover Details’ below). All of these frameworks offer at least one version of a dialog. See ‘Collapsible Panels’ for alternatives to dialogs.

  10. DOCKABLE PANELS AND TOOLBARS

    Dockable Palettes in SproutBuilder

    Dockable palettes and toolbars are indispensable controls for maximizing and/or customizing a canvas workspace where real estate is tight.

    1. DRAG AND DROP MANAGER

      Drag and drop demo with Ext JS

      If your design requires drag and drop, review Bill Scott’s Interaction Matrix. Then play with the Ext JS organizer demo, they nailed the interaction design. The only thing missing is a drag handle on the photos.

    2. DYNAMIC FILTER

      Adaptive filtering with SmartClient

      Dynamic filtering can work well with lists, above grids, and in grid columns. We have found that in-column filtering in tables can can provide powerful refining options for users who are working with large quantities of data. Ideally a clear button should be available within the text field to clear the input. This control can be added to most grids, even if your framework doesn’t offer it out-of-the-box.

    3. FEEDBACK

      Feedback on Picnik

      Gotta have feedback: errors, info, status messages and tips. Put the feedback at the top of the page or in proximity to the action. Avoid using the status bar in the web browser as many people have it hidden. If you are fading feedback in or out, use the 2 second rule.

    4. FISHEYE

      Alpslab Fisheye

      This is the one true fisheye effect I have found for the web. An elegant option for looking a little closer. Works well for maps and very busy charts. Also see ‘Zoom and Pan’ and ‘Magnify’ as alternatives.

    5. FLOATING FOOTER

      Footer in Facebook

      A floating footer (or header like thesixtyone) may be a good solution for displaying persistent options or actions. Most of these frameworks provide a way to code this. Asp.net Ajax has a simple demo for pinning a control in place.

    6. GANTT CHART

      Gantt in Tour de Flex

      Occasionally the need for a gantt chart arises, primarily for scheduling and planning. EyeBlaster Campaign Manager even figured out an amazing way to create a campaign monitoring dashboard on a gantt. But like the ‘Calendar/Scheduler’ and Table/Data Grid’ controls, this is a control best already coded. ILog Elixir provides one for Flex, and there are a number of early versions written with Ajax.

    7. GROWING TEXTAREA

      MooTools Plugin

      Don’t know how much the user is going to type? Start with a reasonable default size and let it grow with the entry. Refer to Facebook for another live example.

      Some of these frameworks also offer a resize-able text area, which can be manually resized. But the growing textarea seems to be more efficient for seamless data entry.

    8. HOTKEYS/KEYBOARD SHORTCUTS

      Keyboard shortcuts in Noteflight

      I love you Noteflight. You make my work easy by providing keyboard shortcuts for common actions.

      Don’t you want to hear your users say that to you? More importantly, do you want to hear what they say when you don’t provide hotkeys? It’s not nice…

    9. HOVER ACTIONS

      MockLinkr uses hover actions to link, comment or delete a hotspot

      Hover actions are a great alternative to repeating the same button a hundred times. All of these frameworks support the ability to code hover actions using css. Remember to provide affordance, a visual cue that these actions exist. A tour invitation is a good way to expose these somewhat “hidden” actions.

    10. HOVER DETAILS

      Trulia provides details on hover

      Displaying extra detail on hover is a great way to “stay on the page”. Avoid the anti pattern of hover and cover (don’t display the details over the primary action).

      Works best for read-only data. If you have input fields, tabs or other heavy interactions use a dialog, an inlay panel or overlay panel. If you must display a link in your hover detail, set a timer so the user has a sporting chance to click the link before the whole thing disappears.

    11. INLINE EDIT

      Inline editing on FLickr

      Look at the experience you are designing- are you optimizing for data entry or reading/scanning? If you are optimizing for readability, inline editing can help by removing the visual noise of all those input containers. Some of these frameworks provide this control as a default- take a look at their CSS and JS. This is an invaluable control for improving efficiency and keeping the user in the flow. For advanced application design- if you already have behaviors tied to a field, imitate the way the desktop handles inline editing- click once to select the object, click again to enter edit mode (note, this is different than double clicking).

    12. LIST: ADVANCED

      Drag and drop reordering on Tick

      Just like we expect more from tables and trees than we did during Web 1.0, lists have to behave more richly now too. Drag and drop reordering, simple list building, custom formatting, and dynamic filtering are all features that can make your list easier to use.

    13. MAGNIFY

      jQZoom magnifies an image

      An excellent alternative to opening a dialog, the magnify control shows a larger version of the area the mouse is over. Few of the frameworks offer this control out of the box, but it can be imitated. Also see ‘Fisheye’ and ‘Zoom and Pan’ for ideas.

    14. MAPPING

      GWT- Ext Maps Showcase

      Many applications need to integrate mapping APIs like Google or Yahoo Maps, the Google Web Toolkit -Ext Showcase has a number of well designed variations worth exploring, as does Flex- just search the Tour de Flex for ‘maps’.

    15. MULTIPLE DOCUMENT INTERFACE

      Mocha UI’s MDI

      Some applications are well suited for a MDI. The MochaUI framework, as well as a few others, provide this control. But consider leveraging the browser’s tab functionality before going down this path.

    16. PORTALS

      Portal demo on the GWT-Ext Showcase

      A portal layout may be a good solution for designing a landing page where the user wants to see content in a certain format and configuration. But remember, providing a high degree of customization is no substitute for user research and testing.

      The BBC and Netvibes have well designed portals you can play with.

    17. PROGRESS INDICATOR

      Loading bar on Discover Spend Analyzer

      Progress indicators can be anything from loading bars to spinning icons to busy cursors. Your best bet is to look at how other good RIAs and desktop apps that indicate progress for situations similar to what you are designing.

    18. RATING

      Ajax star rating bar

      Rating is similar to inline editing in that it allows the user to quickly and efficiently input information without leaving the page or shifting context.

      Rating should not be confused with ranking which would use a control like the ‘List- Advanced’ where the objects can be reordered by dragging.

    19. RECORD LOCATOR/ PAGINATOR

      Paging Grid example Ext JS

      Most tables/grids can and should use live scrolling/ virtual scrolling for navigation. However there are lots of places paging is quite useful, and you can use a paging control. For example, opening a record to review and edit- include a paging control to navigate to other records.

    20. RULE BUILDER/PREDICATE EDITOR

      Advanced Filter control from SmartClient

      This is overkill for most web applications, but if you are designing advanced analytics, searching or reporting tools, you’ll probably need this control. SmartClient Ajax RIA System provides one, and expect to see more frameworks offering this control now that iTunes has introduced a similar feature.

    21. SLIDER

      Accessible Slider

      Sliders are useful controls for letting people select rough values, like louder or quieter, higher or lower, or ranges. They are not the best controls for selecting specific values, like 37% or $211 dollars. If you use a slider, choose one that provides keyboard navigation and/or additional input fields for tweaking the value.

    22. SCOPED SEARCH

      Scoped Search on Kontain

      Let you users get directly to the content they want with a scoped search. Make it an option that doesn’t interfere with typing in the field. Usually set the default search to All or Everything and let them scope it. Janko has a nice tutorial for implementing this with css.

    23. SPARKLINES

      Sparklines at Google Analytics

      Sparklines are the perfect way to show the trend or shape of data in a small space. Created by the data visualization mater, Edward Tufte.

      There are numerous libraries out there that support sparklines for AjaxFlex,Silverlight

    24. SPLITTER

      Splitters in MochaUI

      The splitter provides a way for the user to adjust the screen layout. Remember to show the appropriate cursors when hovering and pushing. Other good examples are Google Reader, and desktop applications like Windows Explorer or iTunes.

    25. TABS: ADVANCED

      Rolling tabs at Coda.com

      Before you decide on tabs, read Jakob Nielsen’s article Tabs Used Right. Tabs are for alternating views of the same context.

    26. TABLE/GRID: ADVANCED

      Grids by ExtJS

      When you are designing for a grid, stick with the standards. Pretty much everything your users need has already been designed for. ExtJS has a very well designed grid with many of the advanced features, such as: live scroll, resize-able and rearrangeable column headers, sorting, hiding and showing columns, row grouping (like a tree table), inline editing, and row selection. Do not roll your own grid- it will take hundreds of hours to code and test for cross browser compatibility.

    27. TREE: ADVANCED

      Advanced Tree in ExtJS

      If your design calls for a tree, use a rich one. ExtJS and Flex have the best trees with full functionality for adding nodes, editing inline, and dragging to reorganize. Also see ‘Vertical Browse’ for a lightweight control to navigate a hierarchy from variable starting points.

    28. TOOLBARS

      Contextual toolbars in Buzzword

      Toolbars are a must have for almost every design that relies on a data grid. Bulk actions can live in the toolbar, as well as global actions like Share, Print, Export… Avoid toolbars and menu bars with drop down or cascading menus. Experiment instead with rich controls in your design like ‘Hover Actions’, ‘Inline Editing’. Try to offer more direct interactions and less navigation.

      Contextual toolbars are another rich control. They expose controls in the context of a particular flow, instead of everything at once. Picnik has the best contextual toolbar I’ve seen.

    29. TOOLTIPS: ADVANCED

      MooTools plugin

      Advanced tooltips can provide a wide array of formatting options. See ‘Hover Details’ for displaying more information on hover.

    30. VERTICAL BROWSER

      Vertical browser for Apple’s Dashboard Widgets

      Concise control for letting a user pick a starting point and navigate a hierarchy to make a selection. Can be made by connecting list boxes in most of these frameworks. Make sure to show the selection path for context.

      Mint just added a similar control to the Trends module for selecting a chart type.

    31. VIEW TOGGLE

      Icons per page toggle on Icon Finder

      Mutually exclusive toggle for selecting a view, like table or graph, or display options like 10, 20 or 50 results per page. Can be created from any of the frameworks. Make sure the selected option is visually distinct from the others.

    32. WYSIWYG/ RICH TEXT EDITOR

      YUI 2 Rich Text Editor

      For composing or editing large bodies of text, a WYSIWYG editor provides the tools people have come to expect. Many of the frameworks include this control with fully customizeable features. CMS systems are now on board with this and have integrated rich text editors directly into their screens, see InContext and theDrupal redesign.

    33. ZOOM AND PAN

      Zoom and Pan with a Flex extension

      You don’t need to know how to code these controls- just that they exist and the best practices for using them. You can imagine a scenario where instead of laboring over detailed wireframes with extensive interaction notes, you say “it’s just like the inlay panel BBC uses to customize the portals on the home page” and “JQuery has a great plugin for it”. Think of the time you’ll save and the credibility you’ll build with your team.

      For maps, photos and drawing canvases, panning can replace scrollbars and provide a more natural experience for sliding information in and out of view. See also ‘Magnify’ and ‘Fisheye’ for other techniques.

时间: 2024-08-08 01:28:27

Essential controls for web app的相关文章

Azure Stack技术深入浅出系列5:在Azure Stack上使用Web App PaaS服务及其背后原理窥探(开发案例)

App Service 是微软Azure的PaaS产品. 为任何平台或设备创建Web App PaaS服务和mobile App PaaS服务. 将应用与SaaS解决方案集成.与本地应用程序进行连接,以实现业务流程的自动化.在我们日常开发中,经常会使用Web App PaaS服务来承载企业的业务. 本文试图通过一个案例来分别详细说明Azure Web App业务的下列几大特点: 应用服务计划 多种语言和框架 持续集成和部署 连接数据库服务 可用性全局缩放 就在本文撰写过程中,Azure Stac

怎么判断一个APP是原生APP、混合APP还是WEB APP ?

1.看断网情况 通过断开网络,刷新页面,观察内容缓存情况来有个大致的判断,可以正常显示的就是原生写的,显示404或者错误页面的就是html页面. 2.看布局编辑 3.看复制文章的提示,需要通过对比才能得出结果. 比如文章资讯页面可以长按页面试试,如果出现文字选择,粘贴功能的是H5页面,否则是native原生的页面. 有些原生APP开放了复制粘贴功能或者关闭了,而H5的CSS屏蔽了复制选择功能等情况,需要通过对目标测试APP进行对比才可知. 在支付宝APP.蚂蚁聚宝是可以判断的. 4.看加载的方式

Outlook Web App 客户端超时设置

这篇文章我们讨论一下,OWA 2013在公共和私人的电脑是如何启用和配置. Exchange 2013 Outlook Web App (OWA) 登录页不再允许用户选择无论他们正在使用公共的或私人的计算机.默认情况下,OWA 2013 是假定用户使用的是私人计算机,如使用超时的 8 小时.出于安全考虑,用户处于非活动状态之前要求用户重新登录. 在 Set-OWAVirtualDirectory cmdlet 中 LogonPagePublicPrivateSelectionEnabled 参数

说说 PWA 和微信小程序--Progressive Web App

作者:云图图链接:https://zhuanlan.zhihu.com/p/22578965来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 利益相关:微信小用户,谷歌小员工 微信发布了微信小程序,虽然还在内测阶段,但是无论从技术上,还是以后要不要开发原生应用(native app)上引发了不少讨论.其实看到微信小程序的消息, 我第一时间想到的是 Google 之前推出的PWA(Progressive Web App),两者的目的是类似的(伪原生应用),但是形式却又

Skype For Business 2015实战系列13:安装Office Web App Server

Skype For Business 2015实战系列13:安装Office Web App Server 今天要为大家介绍的是Office Web App Server(以下简称OWA),OWA在Skype For Business中的主要作用就是在用户使用Skype客户端开会的时候可以共享PPT,从而可以更好的进行演讲! 安装OWA: 我们登陆到OWA,服务器,坚持服务器的基本信息如下: 安装OWA所需的Windows组建: 以管理员身份打开Powershell,运行如下命令: Add-Wi

2. 软件有很多种,也有各种分类办法: ShrinkWrap (在包装盒子里面的软件,软件在CD/DVD上); Web APP (基于网页的软件); Internal Software (企业或学校或某组织内部的软件); Games (游戏); Mobile Apps (手机应用); Operating Systems (操作系统); Tools

 选取对你最相关的一类软件,  请回答:(web app)  1) 此类软件是什么时候开始出现的, 这些软件是怎么说服你(陌生人)成为他们的用户的?  他们的目标都是盈利么?  他们的目标都是赚取用户的现金么?还是别的?        web最早起源于1980年蒂姆·伯纳斯-李构建的ENQUIRE项目,后英国人Tim Berners-Lee在1989年提出的web应用架构技术.从1992年开始兴起的技术包括JAVA,Javascript,Flash,Browers等技术的兴起,web app和桌

慕课网实战—《用组件方式开发 Web App全站 》笔记五-折线图组件开发

运用HTML5.CSS3.JS流行技术,采用组件式开发模式,开发Web App全站!技术大牛带你统统拿下不同类型的HTML5动态数据报告! <用组件方式开发 Web App全站 > 折现图绘制大致步骤 折线图画布 JavaScript CSS 折线图绘制网格线 // 水平网格线 100份 -> 10份 var step = 10; ctx.beginPath(); ctx.lineWidth = 1; ctx.strokeStyle = '#AAAAAA'; window.ctx = c

web app变革之rem(转载)

rem这是个低调的css单位,近一两年开始崭露头角,有许多同学对rem的评价不一,有的在尝试使用,有的在使用过程中遇到坑就弃用了.但是我对rem综合评价是用来做web app它绝对是最合适的人选之一. rem是什么? rem(font size of the root element)是指相对于根元素的字体大小的单位.简单的说它就是一个相对单位.看到rem大家一定会想起em单位,em(font size of the element)是指相对于父元素的字体大小的单位.它们之间其实很相似,只不过一

Web APP开发技巧总结(转)

一.META/LINK相关: 1.百度禁止转码 通过百度手机打开网页时,百度可能会对你的网页进行转码,往你页面贴上它的广告,非常之恶心.不过我们可以通过这个meta标签来禁止它: <meta http-equiv="Cache-Control" content="no-siteapp" /> 相关链接:SiteApp 转码声明 2.添加到主屏后的标题(IOS) <meta name="apple-mobile-web-app-title&