4 个多才多艺的 jQuery 下拉菜单插件

这里我们收集了 4 个最棒的 jQuery 下拉菜单插件,提供很多特性,例如自动完成、搜索、标签、多选、ajax 等。

1. ddSlick

ddSlick 是一个轻量级的 jQuery 插件用来实现定制的下拉组件。

2. DropKick

DropKick 可用来对下列列表的样式进行自定义,效果很炫。比较纠结的是对 IE 不支持。

Dropkick-new-cool-jquery-plugins-2011

3. TextExt

TextExt 是一个 jQuery 插件,提供对文本输入框的功能扩展,可实现自动完成、标签输入、ajax和过滤功能。

4. Chosen

jQuery Chosen Plugin 是一个 jQuery 插件,用来将网页中的下拉框进行功能扩展和美化。可实现对下拉框的搜索,多个标签编辑等功能,如下图所示:

亲爱的 Oracle: Java API 不是艺术品

Oracle曾经说Java API就像是优美的画作。Google却说API就是文件柜里的文件。最后,William Alsup(负责审理Oracle和Google关于Java纠纷的法官)比较同意Google的观点,Java作为一门编程语言,其API就像是图书馆里的藏书一样。

“Java里的包(package)就像是图书馆的书架一样”,Alsup法官在他最近一周的所作出的广受关注的裁定中这样写道,该裁定正是针对 Google和Oracle关于Java API的漫长的法律诉讼所作出的,“每一个类(Class)就像是书架上的一本书,类中的每一个方法(Method)就像是书中的‘阅读指南’章节。程序员的工作,就是前往正确的书架,选择正确的书,打开这本书,找到所需要的章节。”

bookshelf
Image: twechy/Flickr

Alsup法官的基本观点是:库文件的组织形式并不受制于版权。是的!他明确地表达了这个观点:书是有版权的,但是你在书架上怎么放书,按什么顺序放,这跟版权一点儿关系都没有。

换句话说,Google复制了37个Java API,用以构建其Android手机操作系统,这一行为并不侵犯Oracle的版权。尽管Google照搬了这些API的组织形式,但Google自行 构建了代码,至少是绝大多数自行构建的。“Java和Android的类库在组成形式上大致相同,基本上提供了相同的功能,解决相同的问题,不过 Google对这些功能函数都做了自己的实现,这些实现和Oracle所属的Java是不一样的。”


Google和Oracle关于Android是否侵犯Java版权开展诉讼

根据这一裁定,Alsup法官终结了这场关于Google Android系统侵权使用Java的诉讼,该诉讼长达六周之久。Oracle于2010年控告Google非法侵占了Java的版权和专利权,并企图通 过该诉讼在Google Android系统的巨额利润中分得一杯羹。不过,依照Alsup法官的裁决,数据库巨头Oracle这次要一无所获了。Oralce已经表明了对此案上 诉的态度。

如果Alsup做出相反的判决,那么Oracle很可能会引发一场‘令人难以想象’的灾难,还好法官没有这么做。Bret Bocchieri表达了这样的观点,他是来自一家名为Seyfarth Shaw LLP的国际法律公司的知识产权专家律师。

更重要的是,Alsup法官的裁决让全世界范围内的软件公司和独立开发者们都松了一口气。在软件世界里,复用API是非常普遍的行为。例如,一些云 计算平台,就模仿了Amazon所拥有的著名的云计算架构ECC(Elastic Compute Cloud)的API形式。API是应用程序的可编程接口,是不同软件之间交互的重要方式,行业内普遍默认对接口的组织和使用并不会触犯到版权保护法律。 Oracle对这个默认规则的挑衅,至少在业界引发了巨大的争议。周四,Alsup法官的裁定结束了这些纷争。

“如果Oracle的观点得到认同,那么着就意味着任何人都能给自己实现的系统或功能加上版权,同时,他还能够根据版权的保护条例禁止其他任何人用 他们自己的方式实现跟你的系统和功能相同的软件。(也就是说,这种软件只能有版权的人做,其他人会做都不能做——译者注)”在法官的41页的简报里,他写 到:“没有任何理由可以支持这种极端的提议。”

Alsup法官 为了审案甚至亲自学习了Java编程

Ed Walsh,一位来自于Wolf Greenfield国际法公司的律师,表示他对这样的裁定并不感到惊讶。但是他同时也指出,这个裁定并不意味着从此以后API就不受版权的约束了。 Walsh认为,Alsup法官部分出于Sun公司的原因,帮了Google一把,允许Google复制API。Sun公司才是Java真正的创始者,后 被Oracle收购,而后Oracle才取得了Java的版权并起诉Google.

“我认为有一些因素对裁定结果产生了影响,那就是Sun公司原先是允许人们随意使用Java的”,Walsh说,“所以Oracle不能用版权去限制这些本来就已经开放的事物。”

Catherine Lacavera, Google的诉讼代表,也表达了同样的观点。“这个判决重申了我们长期以来对法律的理解,这些API是可以被所有人自由使用的,正如我们使用它一样,我 们采用了这些功能的声明,并自己独立实现这些声明所包含的功能代码。”,她说,“这就是开发者使用Java的正常模式,你不能说,一种语言是可以自由使用 的,然后又禁止人们使用这种语言的名词或者动词。”

Alsup法官则考虑得更细,他使用了大量的细节来描述什么是Java API以及在法律范围内这些API应当如何对待。他所提出的图书馆的比喻非常经典。但是他可不是仅仅停留在比喻的层面上。他似乎真的理解什么是API.他 也很清楚复制一个接口(Interface)和复制实现接口的代码,这两个概念是有区别的。

“每个成员方法(Method)和类(Class)都是用来实现特定的功能的,因此,‘声明’(或者说‘头文件’)所包含的代码必须和实现功能的代码一致”,Alsup法官在做出图书馆的比喻后还这样说过。

2008年时,Java共包括166个API, 涉及到该600个类,6000多个方法。 Google复制37个API包(package)的名称和操作方式,但是Google用自己的代码对这些方法和类进行了实现。

在诉讼中,Oracle的法律顾问Mike Jacobs常说,构建API就像是进行交响乐创作,或者是,是的,就像是绘制一幅优美的画作一样。Alsup法官当然意识到了开发API是一种创作性行 为。但是他也为这种行为加上了概念性的级别,API这样的发明只能由专利权来保护(而不是知识产权)。Oralce当然也从专利权的角度进行过诉讼,但是 同样没有成功。

Java依赖一种特殊的“词汇表”一样的组织形式,称之为“方法规格说明书(method specification)”,程序员这通过这个说明书告诉计算机需要做什么事情。Alsup法官表示,根据美国版权法案,无论“方法规格说明书”是如 何地有创意,任何人——包括Google——都有权利使用相同的“方法规格说明书”,只要他们对“方法规格说明书”中定义的方法的实现代码不同。“方法规 格说明只是一种‘概念’,方法本身的实现才是具体的表达。法律不能让任何人对‘概念’进行垄断”。Alsup法官如此写道。

法官说,目前还没有哪个上诉法庭或者地区法院对API受版权保护一事做出裁决。但是他也的确参照了其他的案例进行判决,包括1879年最高法院裁定 Baker针对Seldon的诉讼——这是一场讨论关于会计技能是否受版权限制的官司。法院最后裁定会计记账方法学只受专利权的约束,而不受版权的约束, 因为一旦判决其受版权法约束,将会“极大挫伤出版业的积极性”。

“Baker的案例已经很久远了,但是这个案例并不过时。相反,即便是在当代,Baker案也会被告到上诉法庭才能有最终裁定。”

他还引证了1994年苹果公司针对微软公司的诉讼案,1992年冠群电脑国际有限公司(Computer Associates International)针对Atari的官司,以及1985年Whelan Associates, Inc. 针对 Jaslow Dental Laboratory, Inc.的诉讼案,所有的这些案件都是关于计算的各个方面是否违反版权的。Alsup得出结论:如果一个概念有不只一种表达方式,那么没有人可以申请对概念本身的版权。

名称和短语都是不受版权保护的,他说,版权保护的范围不会延伸到任何概念,过程、进程、系统、操作方法,或者观念——无论以任何形式。他还说,对实现互用性所必要的功能性元素不受版权限制。这里就包括了Java API.

从很多方面来说,Google和Oracle的官司的结果并不让人激动。但是从某些方面来讲,这个案子又远远超传统的意义。该案的亮点在于,Alsup法官告诉法庭,他自己为了审案而学习了Java编程,这给了Oralce一记响亮的耳光,别想用技术蒙蔽法官的双眼。 回顾这长达6周的诉讼,在法庭上,Alsup法官多次向双方的律师和技术证人提出各种专业而尖锐的问题,这真是非常精彩的表现!我们信任这样的法官!在他 的裁决书里,他甚至自己写出了各种代码,来演示方法(method)、类(class)和包(package)的具体概念。并且,最后,他做出了正确的判 决!

英文原文:Caleb Garling  编译:伯乐在线 – 黄小非

微软推on{x}:远程控制 Android 手机

想象一下,早上出门的时候,Android手机能自动提醒你带伞,因为今天过不久就会下雨。在你下班后,爱人能接收到你提前编写好的信息。可能这一 切都不过瘾,但是通过一个网站和浏览器应用,就能远程控制Android手机,既能提前预设手机执行的“任务”,又可以给远方另一端的人制造意外惊喜,还 有很多很多能够预见的“潜在用途”。


on{x} 

在今天,微软宣布放出了on{X}的beta版本,它是一个网站和Android应用的结合体,通过远程编程能够延伸控制用户的Android手机。相信极客会沉迷到JavaScript API(应用程序编程接口)之中。

在我们深入了解之前,肯定会有这样一个疑问,微软为何会放出一个为Android打造的东西。这个答案在on{X}背后的开发团队上—— IPE(Israeli Information Platform and Experiences)上。IPE擅长基于定位服务中的移动设备信号收集,它为提升Bing搜索体验工作,相关内容包括地理围栏、即时定位分享、接近探 测及持续的日志记录和推荐系统。它也在寻找融合了web服务和应用的新的途径,去提升用户体验。

Shira Weinberg是团队的项目经理,他强调Android平台的开放性和并不严格的安全模型符合他们的要求,所以才在新技术的早期预览阶段,选择将其部署 在Android平台上。这也就是说,这项技术将来肯定会在Windows 8和Windows Phone系统平台上应用。

很多人关心,如何才能使用这项新技术呢?所有用户只需下载对应的Android应用和确认on{X} 网站的(编写)规则。这些规则也称为“点菜单”(recipes),有11个“模板”已经放出和准备供用户使用,例如“当我散步的时候加载音乐应用”, “要是未来3天内我没有走访体育馆就提醒我”。(是不是有点像ifttt?)

即便是初学者,想要编辑这些“任务”都非常简单。而所有的数据和编写规则都是保密的,只有用户能够知晓,对于真正的极客,相信能通过应用程序编程接口创立自己的规则和“模板”。

尽管个人的编写内容受到隐私保护,on{X}也允许用户公布他们自己创立的“菜单”内容,因此公众和普通用户可以好好参考和借鉴别人发布的新编写规则或模板。

5月份最受欢迎的 14 个新的 jQuery 插件

现在是时候汇总下刚过去的5月份里最受欢迎的一些 jQuery 插件,这些插件都很新,值得你试试。

1. jQuery Knob

jQuery Knob

Nice, downward compatible, touchable, jQuery dial.

2. Redactor

Redactor

很棒的 WYSIWYG 编辑器

3. ddSlick

ddSlick

ddSlick 是一个轻量级的 jQuery 插件用来实现定制的下拉组件。

4. grrrid.js

grrrid.js

用于实现表格的排版方式

5. Superscrollorama

Superscrollorama

实现各种滚动动画特效

6. CookieCuttr

CookieCuttr

Cookie 的处理

7. Ascensor

Ascensor

Ascensor所实现的效果确实很新颖,你可以用四个方向键来控制网页内容的移动,类似电梯一层层移动的效果,还不明白的直接看演示效果就清楚了。此插件可定制性很高,可以设定是否启用方向键控制,是否显示导航等等。

8. JQVMap

JQVMap

JQVMap 是一个用于输出向量地图的 jQuery 插件,使用可改变大小的 SVG 处理

9. Dynamo

Dynamo

A dead-simple way to generate dynamic bits of HTML and add subtle effects to your content.

10. fixedTOC

fixedTOC

固定的下来菜单

11. AjaxML

AjaxML

AjaxML 对 Ajax 操作进行进一步的封装,使用更加简单,基于 jQuery

12. timing

timing

Timed Invocation Chain (tic) as counterpart to the jQuery Effects Queue (fxq).

13. QuickValidate

QuickValidate

QuickValidate 是一个简单易扩展的表单验证插件

14. Complexify

Complexify

Complexify 是一个用来检测密码强度的 jQuery 插件,并使用友好的效果来提示给用户。

英文原文OSCHINA原创翻译

Windows平台也能运行Android程序了

华硕周日(6月3日)宣布与软件厂商BlueStacks结盟,将透过BlueStacks的技术与华硕的@vibe平台将Android程序带到全球越3000万台华硕品牌的个人电脑上。

BlueStacks所开发的App Player for Windows可允许Android程序在Windows平台上运行,至于华硕的@vibe则是一个安装在华硕电脑上的娱乐服务平台,内含音乐、游戏、电台、网络电视、影片及电子书等,华硕在个人电脑、笔记本电脑与Eee系列的上网本上都内建了@vibe平台。

根据双方的协议,@vibe用户可免费使用6个月的Android应用程序,之后用户可选购升级到功能完善的完整版并将应用程序从手机同步至PC上,目前支持App Player for Windows与@vibe的华硕品牌设备包括ZenBooks、各种型号的笔记本电脑、Eee系列上网本、桌上电脑及 All-in-one电脑等。

华硕eBusiness服务负责人Vira Chang表示,与BlueStacks的合作对@vibe而言是项增值服务,整合两者为华硕消费者云端策略的重心,并期望此一合作所带来的经济效益。

并非所有的Android程序都能透过App Player for Windows运行,目前BlueStacks所提供可于Windows上运行的知名Android程序包括水果忍者、急速尬车(Drag Racing)、水族馆(Tap Fish)与Nook等。

BlueStacks成立于2009年,但一直到今年3月才发布App Player for Windows公测版,处理器大厂AMD在去年10月投资了BlueStacks,表示双方将共同最佳化以AMD处理器为基础的Windows个人电脑与平板电脑。