Archive for 四月, 2009

LinkageSelect 基于jQuery的联动下拉菜单

在Web开发中联动下拉菜单的应用非常广泛,拿我们最常见的地区选择来说,相信几乎所有的网友都填过下面这样的表单:

2009-04-25_141108.jpg

当选择省份后,之后的下拉菜单中会自动给出前一个菜单中所选省份内的城市,以此类推,当选择城市后,再后面一个菜单会自动给出区或县城让用户选择,简单说就是每一次的选择都会影响下一个菜单的可选项,我们称之为联动菜单。

这样的JS代码在网上很多,我曾经也写过一个全国省市区三级联动下拉菜单,在项目中也得到了应用,但在实际项目中,需要使用类似这样联动菜单的地方很多,比如类别的选择等等,这样我就需要为每一个需求去写一份代码,而其中90%以上的代码都是重复或相似的,不但浪费了时间,用户在浏览网页时更需要下载大量重复的代码,增加不必要的开销。

因此我也一直有想法,将联动功能与联动数据分离开来,让一份JS代码能够适应不同的联动菜单需求,于是便有了LinkageSelect,基于jQuery的联动选择菜单。目前已经实现但不局限于以下功能:

  • 数据与代码分离,对应不同的菜单只需要准备不同的数据
  • 支持变量数据或AJAX调用外部数据
  • 支持自定义菜单根节点
  • 支持自定义菜单默认选中值
  • 可动态改变调用的菜单数据

在当前发布的版本中,还包括一个DataBuilder,支持手工创建用于LinkageSelect的JSON动态数据源。计划中就不再提供其他数据装换工具,有需要的朋友可以研究DataBuilder数据库格式,自行导入,再通过json.php输出所需数据源。

在线演示

让运行(WIN+R)无所不能

在Windows系统中,运行(快捷键WIN+R)是很常用的功能,它能在不打开资源管理器的情况下,直接运行任意文件,若这个文件在C:\WINDOWSC:\WINDOWS\SYSTEM32目录下,更是不需要输入完整的文件路径,仅仅输入文件名即可。

例如我们最常用的命令提示符,输入cmd后回车即可。

2009-04-20_001808.jpg

既然运行这么方便,那我用它直接运行QQ可不可以呢?

当然是可以的。假设QQ程序(以QQ2008为例)安装在C:\Program Files\QQ2008\文件夹下,那么输入C:\Program Files\QQ2008\QQ.exe即可立即运行QQ。

这下或许你要问了:这么麻烦,还不如直接点快捷方式呢!是的,这样是相当的麻烦,但我现在只是告诉你,通过运行是可以运行任何文件夹下的程序。

前面我说过,如果文件在C:\WINDOWSC:\WINDOWS\SYSTEM32目录下,仅需要输入文件名即可直接运行程序,那如果我把C:\Program Files\QQ2008\也加入到这个查找列表下,是否就可以只输入QQ两个字母就可以运行QQ了呢?

正是如此!而这个路径的设置也相当的简单。使用快捷键WIN+Break打开”系统属性”对话框,选择”高级”标签页,再点击”环境变量”按钮,这时候打开了”环境变量”设置对话框,在下面的”系统变量”列表中找到”Path”一行,是不是看到了如上面所说的两个目录C:\WINDOWSC:\WINDOWS\SYSTEM32

2009-04-20_002855.jpg

双击Path或选中Path行后点击下面的”编辑”按钮后进入Path变量编辑状态,在其最后加上”C:\Program Files\QQ2008\“(注意:每个目录之间需要用半角分号[;]分隔),保存后重启计算机(注销并重新登陆系统也可生效),再在运行中输入”QQ”,是不是就能打开QQ了!

恭喜你!到这里,你已经掌握了这个小技巧的第一步:使用环境变量

QQ是能通过运行来打开了,但每加一个软件都需要改环境变量然后重启电脑么?

当然不用这么麻烦!既然你已经知道了怎么使用环境变量来快速打开文件,那么我们为什么不让所有我们想要快速运行的程序都放在某个文件夹下呢?对!使用快捷方式!

跟我来,一步步打造万能的运行!

首先,我们要新建一个放置快捷方式的文件夹D:\QuickRun,如上面的操作方法,将D:\QuickRun加入到Path变量中。重启电脑。再将QQ的快捷方式放入D:\QuickRun,这时候再在运行中输入QQ是不是也能打开?举一反三,其他程序也可以这么做。

或许到这里你又会有疑问:为什么要用运行来打开QQ呢?直接点快捷方式不是更方便?

是的,在这里只是以QQ为例介绍如何让运行支持更多程序。

在日常使用中,可以设定一些文件夹的快捷方式:例如建立一个名为works的快捷方式,运行works,直接打开工作文档目录,这样是不是很高效?

小技巧开篇语

从94年开始接触计算机起到现在,也已经有十多个年头了,各类计算机、数码、软硬件捣腾得也不少。在捣腾的过程中,也摸索出了一条属于自己的”道”,如何让科技更加方便地为己所用的”道”。

但是,我的”道”是否是适合你的”道”?我不知道,但希望我的”道”,能为大家更快的找到属于自己的”道”,提供一条捷径。

今后在”小技巧”这个栏目中,我会不定期的介绍一些我在IT产品(包括但不限于计算机,数码,软件,硬件等)方面的经验和技巧,与大家分享。