jQuery与jQuery Mobile与jQuery UI有何区别?

97

我是一名新手网页开发者,市面上有太多j*的东西让我感到困惑。我想知道这些框架之间有什么区别?

此外,为什么人们会谈论使用jQuery制作插件?难道它不应该只是一个使网页更具交互性的JavaScript库吗?


3
不,对于像我这样的新手来说,这是一个有意义的问题(感谢你提出问题而不是将其修改!)。 - FredyWenger
1个回答

196

jQuery是一个JavaScript框架,旨在让开发人员“写更少,做更多”。您所询问的三种不同风味的jQuery实际上功能各异。

首先是核心库jQuery,它包含了框架的主要功能。例如,如果要使元素淡入,您将在页面中包含jQuery,然后在其中一个元素上调用fadeIn()函数。

jQuery UI是专为用户界面元素和交互而创建的库,通常需要大量代码来操作。因此,该库包含拖放元素的功能,并从这些交互中获取有用的信息。但同时也注重外观和感觉,因此该库提供了各种主题,可为这些强大的UI元素进行样式设计。

jQuery Mobile是建立在jQuery之上,并专门为移动平台设计的强大框架-毕竟像拖放这样的功能需要重新考虑在触摸屏幕上的使用方式,例如“悬停”这样的核心功能在移动设备上根本不存在。

总体而言,这些框架可用于增强站点的可用性,真正为开发人员节省大量时间。要了解更多关于该框架的信息,请访问Learning jQuery-一个非常好的入门资源。

插件允许Web开发人员将解决方案抽象成单个功能独立的块(通常在单独的文件中)。然后,他们可以与其他人共享,以便他们也可以采用相同的方式。因此,如果有人为其站点构建了一个画廊功能,则制作一个插件将使他们能够轻松地重用代码,并帮助其他遇到同样问题的人。


2
如果我使用jQuery Mobile,那么我也需要使用jQuery吗?我的意思是,除了鼠标/键盘事件之外,jQuery Mobile是否提供了所有的jQuery功能? - Muhammad Qasim
4
@MuhammadQasim 您确实需要jQuery核心库,请参见这个问题 - Tom Walters
7
jQuery Mobile不是建立在jQueryUI之上的。当您比较这两个框架中的Object.keys($.fn)时,您可以很容易地看出来。我不确定过去是否始终如此。今天可能存在两者之间的某些不兼容性。 - user123444555621
3
对于新访客来说,jQuery UI 在移动开发方面仍然不太完善,但有一个出色的辅助工具可以解决这个问题:http://touchpunch.furf.com/。 - silencedmessage

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接