jQueryは、ブラウザ間でスクリプトを簡素化および標準化するために純粋に設計されています。要素の作成、DOMの操作、属性の管理、HTTPリクエストの実行など、低レベルのものに焦点を当てています。
jQueryUIは、jQueryの上に構築されたユーザーインターフェイスコンポーネントと機能のセットです(つまり、jQueryが機能する必要があります):ボタン、ダイアログボックス、スライダー、タブ、より高度なアニメーション、ドラッグ/ドロップ機能。
jQueryとjQueryUIはどちらもサイト(デスクトップまたはモバイル)に「追加」できるように設計されています。特定の機能を追加したい場合は、jQueryまたはjQueryUIが役立ちます。
ただし、jQuery Mobileは完全なフレームワークです。これは、モバイルサイトの出発点となることを目的としています。jQueryが必要であり、jQueryとjQueryUIの両方の機能を利用して、UIコンポーネントと、モバイルフレンドリーなサイトを構築するためのAPI機能の両方を提供します。それでも好きなだけ使用できますが、jQuery Mobileを使用すると、ビューポート全体をモバイルフレンドリーな方法で制御できます。
もう1つの大きな違いは、jQueryとjQueryUIがHTMLとCSSの上にあるレイヤーになることです。マークアップをそのままにして、jQueryでそれを拡張できるはずです。ただし、jQuery Mobileは、HTMLのみを使用してコンポーネントを表示する場所を定義する方法を提供します-たとえば(jQuery Mobileサイトから):
<ul data-role="listview" data-inset="true" data-filter="true">
<li><a href="#">Acura</a></li>
<li><a href="#">Audi</a></li>
<li><a href="#">BMW</a></li>
<li><a href="#">Cadillac</a></li>
<li><a href="#">Ferrari</a></li>
</ul>
data-role
属性は、モバイル向けのUIコンポーネントにこのリストを有効にするjQueryのモバイルに指示し、data-inset
かつdata-filter
その一連のプロパティ属性-をJavaScriptを一行も書かず。一方、jQueryUIコンポーネントは、通常、数行のJavaScriptを記述してDOMでコンポーネントをインスタンス化することによって作成されます。