• 一个关于用户体验的思考


    现在的软件认真一点都要注重所谓用户体验(user experience),比如在 B/S 开发这块大家越来越喜欢用 Ajax,就是为了提高界面对用户的友好程度。我们知道 Ajax 开发中经常会使用联动下拉列表,或类似的“连锁反应”。前不久,在我开发的一个页面中使用了联动列表的技术,在向客户演示时,出现了一个尴尬的局面:

    客户在选中了第一级下拉的选项后,程序无刷新读取数据,调出了相关的数据,是一个稍微长一点的表单;
    随即客户想看看页面下方查出来的东西,于是向下滚动鼠标滚轮,可是这时焦点还在第一个下拉列表上。可以想见下面发生了什么:连续发生了 n 次选择不同选项的无刷新调用。

    这种行为显然不是我所想看到的。虽然可以教客户每次选择后,要在页面空白处点击一下让下拉框失去焦点,但这显然不是个友好的设计。

    很自然的,我想到一个办法:禁止可能产生联动效应的那些下拉框的鼠标滚轮事件,并将焦点转移到 body 上,让滚轮变成正常的滚动页面。代码非常简单:

    <select onmousewheel="window.event.returnValue = false; document.body.focus();">
        
    <option>1</option>
        
    <option>2</option>
        
    <option>3</option>
        
    <option>4</option>
        
    <option>5</option>
    </select>

    这个代码本身可以说是不值一提。现在采用 Ajax 开发越来越多,我觉得如果能总结出这方面一些小技巧,加强 Ajax 程序的用户体验,应该是有价值的。
    对这方面有兴趣的朋友,请不吝指教。大家一起总结一些技巧出来。
  • 相关阅读:
    日期格式设置
    ccnet编译后dll被删除
    GridView使用
    项目发布命令
    虚拟内存技术原理和使用方法
    一种可以穿透还原卡和还原软件的代码
    DataList控件也玩分页
    如何在 Windows XP 或 Windows Server 2003 的应用程序开发中实现 URL 验证
    vc 6.0中开发驱动设备程序配置方法
    通过CreateFile来读取磁盘扇区的方法
  • 原文地址:https://www.cnblogs.com/RChen/p/dynamic_linked_lists_user_experience.html
Copyright © 2020-2023  润新知