<?xml version="1.0"?>
<rss version="2.0"><channel><title>&#x627;&#x644;&#x628;&#x631;&#x645;&#x62C;&#x629;: jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/?d=2</link><description>&#x627;&#x644;&#x628;&#x631;&#x645;&#x62C;&#x629;: jQuery</description><language>ar</language><item><title>&#x627;&#x644;&#x62F;&#x631;&#x633; &#x627;&#x644;&#x633;&#x627;&#x62F;&#x633;: &#x625;&#x646;&#x634;&#x627;&#x621; &#x627;&#x644;&#x642;&#x648;&#x627;&#x626;&#x645; &#x648;&#x62A;&#x646;&#x633;&#x64A;&#x642;&#x647;&#x627; &#x648;&#x625;&#x646;&#x634;&#x627;&#x621; &#x646;&#x645;&#x627;&#x630;&#x62C; &#x627;&#x644;&#x628;&#x62D;&#x62B; &#x648;&#x62A;&#x633;&#x62C;&#x64A;&#x644; &#x627;&#x644;&#x62F;&#x62E;&#x648;&#x644;</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B3%D8%A7%D8%AF%D8%B3-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%A7%D9%84%D9%82%D9%88%D8%A7%D8%A6%D9%85-%D9%88%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D9%87%D8%A7-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D9%86%D9%85%D8%A7%D8%B0%D8%AC-%D8%A7%D9%84%D8%A8%D8%AD%D8%AB-%D9%88%D8%AA%D8%B3%D8%AC%D9%8A%D9%84-%D8%A7%D9%84%D8%AF%D8%AE%D9%88%D9%84-r718/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2019_07/5d36e074f287a_.jpg.3ac3ef71eb66e15d4c05b59a554d43bf.jpg" /></p>

<p>
	سنتحدث في درسنا الأخير من <a href="https://academy.hsoub.com/tags/jquery%20mobile/" rel="">هذه السلسلة</a> عن إنشاء القوائم ul-li، وكيف نطبق القالب على القوائم المرتبة وغير المرتبة، وسنشرح كيف نستخدم الصورة المصغرة (thumbnails) والأيقونات في القوائم، وكيف ننشئ نماذج البحث وتسجيل الدخول باستخدام عناصر النموذج، ويأتي كل هذا مع مقتطفات من الشيفرة البرمجية.
</p>

<p>
	هذا الدرس جزء من <a href="https://academy.hsoub.com/tags/jquery%20mobile/" rel="">سلسلة دروس تشرح jQuery Mobile</a>:
</p>

<ul>
<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%A3%D9%88%D9%84-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9%D8%8C-%D8%A8%D9%86%D8%A7%D8%A1-%D9%88%D8%AA%D9%82%D8%AF%D9%8A%D9%85-%D9%85%D8%AD%D8%AA%D9%88%D9%89-r629/" rel="">الدرس الأول: البداية، بناء وتقديم محتوى</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%86%D9%8A-%D8%A7%D9%84%D8%AA%D8%B6%D9%85%D9%8A%D9%86%D8%8C-%D8%AA%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9%D8%8C-%D8%A7%D9%84%D8%AA%D9%86%D9%82%D9%84-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-%D8%A7%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-r633/" rel="">الدرس الثاني: التضمين، تهيئة الصفحة، التنقل بين الصفحات وأحداث التحميل</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%84%D8%AB-%D8%A7%D8%AA%D8%AC%D8%A7%D9%87-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB%D9%87%D8%A7-r702/" rel="">الدرس الثالث: اتجاه الصفحة وأحداثها</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D8%B1%D8%A8%D8%B7-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AE%D8%A7%D8%B1%D8%AC%D9%8A%D8%A9-%D9%88%D8%AA%D9%86%D8%B8%D9%8A%D9%85-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D8%A8%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A9-%D9%88%D8%A8%D9%86%D8%A7%D8%A1-%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%B7%D9%8A-r703/" rel="">الدرس الرابع: ربط صفحات خارجية وتنظيم المحتوى بنظام الشبكة وبناء محتوى قابل للطي</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AE%D8%A7%D9%85%D8%B3-%D8%A7%D9%84%D8%A3%D9%8A%D9%82%D9%88%D9%86%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%B2%D8%B1%D8%A7%D8%B1-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D8%A7%D8%AA-%D9%85%D8%AE%D8%B5%D8%B5%D8%A9-r717/" rel="">الدرس الخامس: الأيقونات والأزرار وإنشاء تنسيقات مخصصة</a>
	</li>
	<li>
		الدرس السادس: إنشاء القوائم وتنسيقها وإنشاء نماذج البحث وتسجيل الدخول
	</li>
</ul>
<h2 id="-">
	إنشاء قائمة قياسية
</h2>

<p>
	يمكنك باستخدام HTML إنشاء قائمة قياسية عن طريق إنشاء عنصر <a href="https://wiki.hsoub.com/HTML/ul" rel="external"><code>ul</code></a> ووضع عناصر <a href="https://wiki.hsoub.com/HTML/li" rel="external"><code>li</code></a> داخله، وستتبع نفس الخطوات لإنشاء قائمة قياسية في jQuery Mobile وستحتاج إلى إضافة الخاصية <code>data-role="listview"‎</code> إلى عنصر <code>ul</code>.
</p>

<h3 id="-51-jquery-mobile">
	المثال 51: القوائم باستخدام jQuery Mobile
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_6" style="">
<span class="pln"> </span><span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">List Items</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">I am a list item!</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">I am another list item!</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">List Items with Links</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">I am a link in a list item!</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">I am another link in a list item!</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30788" href="https://academy.hsoub.com/uploads/monthly_2019_07/img1.png.e093fa8f0c323d90bb4759a87579e411.png" rel=""><img alt="img1.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30788" data-unique="kj8c69lmo" src="https://academy.hsoub.com/uploads/monthly_2019_07/img1.thumb.png.545fc417c2263b300e541f2c619351b5.png"></a>
</p>

<h2 id="-">
	تطبيق قالب على شكل عناصر القائمة
</h2>

<p>
	لإضافة المرونة إلى شكل القائمة، تملك jQuery Mobile بعض خاصيات <code>data</code> لتنسيق الحاويات وفقاعات العد (count bubbles) وأزرار التقسيم (split buttons).
</p>

<p>
	لتطبيق قالب على قائمة مقسمة (list divider)، يمكنك إما تطبيق الخاصية <code>data-theme</code> مباشرةً أو يمكنك استخدام الخاصية <code>data-divider-theme</code> التي تطبقها على وسم <code>ul</code> الرئيسي.
</p>

<p>
	بالنسبة لفقاعات العد، استخدم الخاصية <code>data-count-theme</code> التي يمكنك وضعها على الوسم <code>ul</code> لتطبيق القالب على جميع فقاعات العد في القائمة، أو إلى عناصر فردية لتحديد الفرق بين قوائم عدّ القوالب المختلفة داخل قائمة معينة.
</p>

<p>
	استخدم الخاصيتين <code>data-split-theme</code> و <code>data-split-icon</code> لقالب أزرار التقسيم. تسمح لك الخاصية <code>data-split-theme</code> بتحديد القالب للزر الصحيح في أزرار التقسيم، ويمكنك تطبيقها إما على <code>ul</code> أو على عناصر فردية في القائمة.
</p>

<h3 id="-52-jquery-">
	مثال 52: استخدام قوالب jQuery في مكونات القائمة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_8" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Cutomized icons in jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-e"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Theming list view elements</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-split-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="pln"> </span><span class="atn">data-divider-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="pln"> </span><span class="atn">data-count-theme</span><span class="pun">=</span><span class="atv">"a"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">Tutorial courses</span><span class="tag">&lt;span</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-count"</span><span class="tag">&gt;</span><span class="pln">3</span><span class="tag">&lt;/span&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"application.php"</span><span class="tag">&gt;</span><span class="pln">Microsoft Application</span><span class="tag">&lt;/a&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"order.php"</span><span class="tag">&gt;</span><span class="pln">Make order</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"suite.php"</span><span class="tag">&gt;</span><span class="pln">Graphic suite</span><span class="tag">&lt;/a&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"apply.php"</span><span class="tag">&gt;</span><span class="pln">Apply now</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"dkit.php"</span><span class="tag">&gt;</span><span class="pln">Developers kit</span><span class="tag">&lt;/a&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"request.php"</span><span class="tag">&gt;</span><span class="pln">Request now</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30789" href="https://academy.hsoub.com/uploads/monthly_2019_07/img2.png.85df0fd8ac4108e29342864ea77d36ca.png" rel=""><img alt="img2.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30789" data-unique="683px3q7d" src="https://academy.hsoub.com/uploads/monthly_2019_07/img2.thumb.png.6b1f9b82bb0cc6548df01209ee61b68e.png"></a>
</p>

<h2 id="-">
	إنشاء قائمة مركّبة
</h2>

<p>
	لإنشاء قائمة مركبة (inset list) تفاعلية (تشبه عناصرها الأزرار)، ابدأ بإنشاء قائمة قياسية وأضف إليها الخاصية <code>data-inset="true"‎</code> إلى عنصر <code>ul</code>. غيرنا السطر الأول لجعل القائمة مركبة:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_10" style="">
<span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-inset</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span></pre>

<h3 id="-53-">
	مثال 53: إنشاء قائمة مركّبة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_12" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-inset</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">List Items</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">I am a list item!</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">I am another list item!</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">List Items with Links</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">I am a link in a list item!</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">I am another link in a list item!</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30790" href="https://academy.hsoub.com/uploads/monthly_2019_07/img3.png.ce131bc8cda392baa938ea20e9c15937.png" rel=""><img alt="img3.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30790" data-unique="tf5tkt4zj" src="https://academy.hsoub.com/uploads/monthly_2019_07/img3.thumb.png.bc14c93c38df89b2147a0dbc96855b2b.png"></a>
</p>

<h2 id="-">
	استخدام قائمة مرتَّبة
</h2>

<p>
	تحتاج إلى البدء بعنصر <a href="https://wiki.hsoub.com/HTML/ol" rel="external"><code>ol</code></a> وتضمين <a href="https://wiki.hsoub.com/HTML/li" rel="external"><code>li</code></a> داخله لإنشاء قائمة مرتبة. كل عنصر <code>li</code> سيُرقَّم تلقائيًّا بناءً على ترتيبه في القائمة.
</p>

<h3 id="-54-jquery-mobile-">
	مثال 54: استخدام jQuery Mobile لإنشاء قائمة مرتبة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_14" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ol</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">Numbered List Items with Links</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Polar</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Grizzly</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Brown</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Black</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ol&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30791" href="https://academy.hsoub.com/uploads/monthly_2019_07/img4.png.a7b11895cfb77a1733c848230d5ef21a.png" rel=""><img alt="img4.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30791" data-unique="hanch1p66" src="https://academy.hsoub.com/uploads/monthly_2019_07/img4.thumb.png.dc645571a187b36d1c5e8f99d4a5f457.png"></a>
</p>

<h3 id="-55-jquery-mobile-">
	مثال 55: استخدام jQuery Mobile لإنشاء قائمة مركبة مرتبة
</h3>

<p>
	في حين لم تُعد القائمة المرتبة كقائمة مركبة مرتبة، إلا أنه يمكنك إنشاء واحدة باستخدام الخاصية <code>data-inset="true"‎</code> على العنصر <code>ol</code>.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_16" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ol</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-inset</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">Numbered List Items with Links</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Polar</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Grizzly</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Brown</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Black</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ol&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30792" href="https://academy.hsoub.com/uploads/monthly_2019_07/img5.png.611858cdd922fae9b5736c45717ff3a5.png" rel=""><img alt="img5.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30792" data-unique="lhmu2lmjx" src="https://academy.hsoub.com/uploads/monthly_2019_07/img5.thumb.png.46120dc922cc678fa3c515e7b21b3e5f.png"></a>
</p>

<h2 id="-jquery-mobile">
	إضافة عداد إلى القائمة في jQuery Mobile
</h2>

<p>
	يحظى هذا النمط بشعبية في تطبيقات الرسائل أو البريد الإلكتروني لعرض رقم العناصر أو حساب عدد العناصر الموجودة في القسم الفرعي أو رابط، ويمكنك تكرار هذا النمط باستخدام عنصر يحتوي على الخاصية <code>class="ui-li-count"‎</code> داخل عناصر <code>li</code>.
</p>

<h3 id="-56-jquery-mobile-">
	مثال 56: استخدام jQuery Mobile لوضع عداد في قائمة قياسية
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_18" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">List Items with Links and a Count</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Bugs</span><span class="tag">&lt;span</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-count"</span><span class="tag">&gt;</span><span class="pln">5</span><span class="tag">&lt;/span&gt;&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Comments</span><span class="tag">&lt;span</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-count"</span><span class="tag">&gt;</span><span class="pln">12</span><span class="tag">&lt;/span&gt;&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Suggestions</span><span class="tag">&lt;span</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-count"</span><span class="tag">&gt;</span><span class="pln">8</span><span class="tag">&lt;/span&gt;&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Tickets</span><span class="tag">&lt;span</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-count"</span><span class="tag">&gt;</span><span class="pln">27</span><span class="tag">&lt;/span&gt;&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30793" href="https://academy.hsoub.com/uploads/monthly_2019_07/img6.png.2d6b070725499b1ae2d3db88c36b20d6.png" rel=""><img alt="img6.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30793" data-unique="mpxczdsgf" src="https://academy.hsoub.com/uploads/monthly_2019_07/img6.thumb.png.73ce72a96bec273eb8fe2cc8f9966f39.png"></a>
</p>

<h2 id="-jquery">
	إضافة الأيقونات والصور المصغرة إلى عناصر قائمة باستخدام jQuery
</h2>

<p>
	عند تصميم قائمتك، قد ترغب في تضمين أيقونة أو صورة مصغرة مع كل عنصر في القائمة، وهذا ليس ممكنا فقط بل سهل أيضًا.
</p>

<h3 id="-">
	إضافة صورة مصغّرة
</h3>

<p>
	الصورة المصغّرة هي معاينة أو نسخة صغيرة من صورة أكبر، ويمكنك إضافة الصور المصغرة إلى عناصر القائمة عن طريق تضمينها داخل عنصر <a href="https://wiki.hsoub.com/HTML/a" rel="external"><code>a</code></a> في عنصر <code>li</code>.
</p>

<h4 id="-57-jquery-mobile-">
	مثال 57: استخدام jQuery Mobile لإضافة صور مصغرة إلى عناصر القائمة
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_20" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">List Items with Links and Thumbnails</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/virgin.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"A Virgin"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">Virgin</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/tear.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Tears"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">Tears</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/scholar.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Scholars"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">Scholars</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/studying.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Study"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">Study</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30794" href="https://academy.hsoub.com/uploads/monthly_2019_07/img7.png.a9c2fcb67fba556096a2f7d7f9d07bd4.png" rel=""><img alt="img7.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30794" data-unique="8vtzbt18j" src="https://academy.hsoub.com/uploads/monthly_2019_07/img7.thumb.png.4d7341098b1e27879a13f31b94fd26ef.png"></a>
</p>

<h3 id="-">
	إضافة أيقونات إلى عناصر قائمة
</h3>

<h4 id="-58-jquery-mobile-">
	المثال 58: استخدام jQuery Mobile لإضافة أيقونات إلى عناصر القائمة
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_22" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">List Items with Links and Thumbnails</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-icon"</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/virgin.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"A Virgin"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">Virgin</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-icon"</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/tear.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Tears"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">Tears</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;img</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-icon"</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/scholar.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Scholars"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">Scholars</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;img</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-icon"</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/studying.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Study"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">Study</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30795" href="https://academy.hsoub.com/uploads/monthly_2019_07/img8.png.25f2fdfa150fcb5ef3f6a72d53857d1c.png" rel=""><img alt="img8.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30795" data-unique="cakp77g3g" src="https://academy.hsoub.com/uploads/monthly_2019_07/img8.thumb.png.0a1637144aab6747eb3a86aeea1aeffd.png"></a>
</p>

<h2 id="-">
	إنشاء قائمة مقسمة
</h2>

<p>
	القائمة المقسمة (split list) هي قائمة تحتوي على عناصر تملك أكثر من رابط واحد. عندما تضيف عنصرين داخل عنصر <code>li</code>، يُنشئ jQuery Mobile قائمة مقسمة تلقائيًا.
</p>

<p>
	يأخذ العنصر الأول معظم مساحة عنصر القائمة تاركًا العنصر الثاني كقسم صغير مع مساحة لأيقونة على الجانب الأيمن من عنصر القائمة. بما أن القوائم المقسمة التي تنشئ تلقائيًا بإضافة رابطٍ ثانٍ، يمكنك خلط قوائم إضافية أخرى معًا.
</p>

<h3 id="-59-jquery-mobile-">
	مثال 59: استخدام jQuery Mobile لإنشاء قائمة مقسمة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_24" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-split-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">Split List</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;h3&gt;</span><span class="pln">First link in a split list</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
            </span><span class="tag">&lt;p&gt;</span><span class="pln">The icon on the right is the default icon</span><span class="tag">&lt;/p&gt;</span><span class="pln">
          </span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">title</span><span class="pun">=</span><span class="atv">"Second Link"</span><span class="tag">&gt;</span><span class="pln">Second link in a split list</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-li-icon"</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/cable_car2.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Cars on route"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
            </span><span class="tag">&lt;h3&gt;</span><span class="pln">Use with an icon</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
            </span><span class="tag">&lt;p&gt;</span><span class="pln">Yep, you can use icons with split lists</span><span class="tag">&lt;/p&gt;</span><span class="pln">
          </span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">title</span><span class="pun">=</span><span class="atv">"Another link"</span><span class="tag">&gt;</span><span class="pln">Another split list link</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/cable_car1.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Cars on wires"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
            </span><span class="tag">&lt;h3&gt;</span><span class="pln">Use with a thumbnail</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
            </span><span class="tag">&lt;p&gt;</span><span class="pln">Wow, you can also use thumbnails in split lists.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
          </span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">title</span><span class="pun">=</span><span class="atv">"Titles are accessible"</span><span class="tag">&gt;</span><span class="pln">Another split list link</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30796" href="https://academy.hsoub.com/uploads/monthly_2019_07/img9.png.745453d45d6b9278b942f669600b1eef.png" rel=""><img alt="img9.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30796" data-unique="mse30zhdp" src="https://academy.hsoub.com/uploads/monthly_2019_07/img9.thumb.png.0bfc2e1478470784318c4c8826d17f5f.png"></a>
</p>

<h2 id="-">
	محتوى قائمة البحث
</h2>

<p>
	إذا كنت تستخدم القائمة لعرض عدد كبير من العناصر فيمكنك إرفاق مرشّح بحث لمساعدة المستخدمين في التنقل لإيجاد ما يريدون.
</p>

<p>
	إن إنشاء مرشّح البحث أسهل مما تعتقد، فكل ما يجب عليك فعله هو إضافة الخاصية <code>data-filter="true"‎</code> إلى عنصر <code>ul</code> في قائمتك.
</p>

<h3 id="-60-jquery-mobile-">
	مثال 60: استخدام jQuery Mobile لإنشاء محتوى قائمة البحث
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_26" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-filter</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">Secondary Names</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Okeagu Chioma</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Nonso Diobi(S.P)</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Ikenna Okoye</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Agu Chidera</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Onyeka Ibezim</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Maduka Abum</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Felix Onah</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Mmadueke Oluchukwu</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Nneka Ebeonadi</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Cosmas Ugwuoke</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Chisom Okonkwo</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Marvelous Nnaemeka</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Umenna Julius</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Leonard Onah</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Ferdinand Okoro</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Shedrack Onah</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Umenna Vera</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30797" href="https://academy.hsoub.com/uploads/monthly_2019_07/img10.png.c2bbef8ba9da32738ed15fb4d5a17267.png" rel=""><img alt="img10.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30797" data-unique="atwynxzf4" src="https://academy.hsoub.com/uploads/monthly_2019_07/img10.thumb.png.21349ba8666453be8be44f7c673ad32d.png"></a>
</p>

<h2 id="-">
	تخصيص مرشح بحث عن نصوص في قائمة مركبة
</h2>

<h3 id="-61-jquery-mobile-">
	مثال 61: استخدام jQuery Mobile لإنشاء مرشح بحث عن نصوص في قائمة مركبة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_28" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Listing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Listing using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-filter</span><span class="pun">=</span><span class="atv">"true"</span><span class="pln"> </span><span class="atn">data-filter-placeholder</span><span class="pun">=</span><span class="atv">"Find Album..."</span><span class="pln"> </span><span class="atn">data-inset</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"list-divider"</span><span class="tag">&gt;</span><span class="pln">Adice</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Punishment</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Disgrace</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Disdain</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Insult</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Angry</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">Ways mobile jQuery</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30798" href="https://academy.hsoub.com/uploads/monthly_2019_07/img11.png.ab41c1494ef793b18dcf25534a8a7419.png" rel=""><img alt="img11.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30798" data-unique="7cblrxz8x" src="https://academy.hsoub.com/uploads/monthly_2019_07/img11.thumb.png.117263c97ccf8347eebb61c34c15759c.png"></a>
</p>

<h2 id="-jquery-mobile">
	تحسين النماذج مع jQuery Mobile
</h2>

<p>
	يدعم jQuery Mobile النماذج (forms) في أجهزة الهاتف، فأُعيد صقل كل عنصر ليكون متاحًا ويمكن استخدامه بسهولة على أجهزة الهاتف، ضع في اعتبارك أن بعض أنماط النماذج تختلف قليلا على المنصة ومتصفح الهاتف الذي تستخدمه.
</p>

<h3 id="-62-jquery-mobile-">
	مثال 62: استخدام jQuery Mobile لبناء نموذج تسجيل دخول بسيط
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_30" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Forms with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Forms in jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"login"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"login"</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"login.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"POST"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"username"</span><span class="tag">&gt;</span><span class="pln">Username: </span><span class="tag">&lt;/label&gt;</span><span class="pln">
        </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"username"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"username"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;br</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"password"</span><span class="tag">&gt;</span><span class="pln">Password:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
        </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"password"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"password"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"password"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;br</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"hidden"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"hiddenInput"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"hiddenInput"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"secret message"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"submit"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"loginSubmit"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"loginSubmit"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Login"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30799" href="https://academy.hsoub.com/uploads/monthly_2019_07/img12.png.5dae60c26b4cf8a5801f265ddd594f3f.png" rel=""><img alt="img12.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30799" data-unique="mgjhifw3l" src="https://academy.hsoub.com/uploads/monthly_2019_07/img12.thumb.png.9da7595207e15a3681c5bd5934bcb6ec.png"></a>
</p>

<h3 id="-63-data-role-fieldcontain-">
	مثال 63: استخدام الخاصية <code>data-role="fieldcontain"‎</code> لترصيف العناصر في نموذج تسجيل الدخول البسيط
</h3>

<p>
	لاحظ أن هنالك فرق بسيط في الشيفرة البرمجية عن سابقه
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_32" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Forms with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Forms in jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"login"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"login"</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"login.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"POST"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"username"</span><span class="tag">&gt;</span><span class="pln">Username: </span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"username"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"username"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
          </span><span class="tag">&lt;br</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"password"</span><span class="tag">&gt;</span><span class="pln">Password:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"password"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"password"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"password"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
          </span><span class="tag">&lt;br</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"hidden"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"hiddenInput"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"hiddenInput"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"secret message"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"submit"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"loginSubmit"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"loginSubmit"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Login"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p>
	تظهر الصورة في أسفل العناصر المنظمة لنموذج تسجيل الدخول البسيط
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30800" href="https://academy.hsoub.com/uploads/monthly_2019_07/img13.png.cae78a35ba0fba338c6d636e5889feb7.png" rel=""><img alt="img13.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30800" data-unique="ax2c4iq3t" src="https://academy.hsoub.com/uploads/monthly_2019_07/img13.thumb.png.5afc653e969ead91a2a3854b61658543.png"></a>
</p>

<p>
	الآن رأينا استخدام عناصر النص، دعنا نلقي نظرة على بعض عناصر الإدخال الأخرى في jQuery Mobile.
</p>

<h3 id="-">
	أزرار الانتقاء ومربعات الاختيار
</h3>

<p>
	ستفيدك <a href="https://wiki.hsoub.com/HTML/input/radio" rel="external">أزرار الانتقاء</a> عندما ترغب في تقديم أكثر من خيار واحد إلى المستخدم لكن يجب عليه أن يختار أحدها فقط، ويشبه ذلك اختبارات متعددة الاختيار أو نماذج "ملء الفقاعة". أزرار الانتقاء في jQuery Mobile متطورة أكثر من أزرار الانتقاء القياسية عبر استخدام عنصر التسمية لعرض زر الانتقاء على شريط سهل اللمس.
</p>

<p>
	يجب عليك لإنشاء زر انتقاء البدء بإنشاء <a href="https://wiki.hsoub.com/HTML/input" rel="external">عنصر الإدخال</a> واستخدام الخاصية <code>type="radio"‎</code>. وقد ترغب أيضا بإعطاء زر الانتقاء خاصية القيمة والمُعرّف.
</p>

<p>
	لجعل أزرار الانتقاء متعددة تعمل معًا، يجب عليك إعطائها جميعًا نفس الاسم، أي يجب أن يشبه زر الانتقاء لهذا المقتطف:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_34" style="">
<span class="pln"> </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"radio"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"radio-1"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"radio-1"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Option 1"</span><span class="pln"> </span><span class="tag">/&gt;</span></pre>

<p>
	يمكنك جمع أزرار الانتقاء معًا داخل عنصر <a href="https://wiki.hsoub.com/HTML/div" rel="external"><code>div</code></a> أو عنصر <a href="https://wiki.hsoub.com/HTML/fieldset" rel="external"><code>fieldset</code></a> باستخدام controlgroup، وسيعرضون دون فواصل بينها. إذا استخدمت عنصر <code>fieldset</code> فيمكنك أيضا استخدام عنصر <code>legend</code> لإعطاء وصف للمجموعة. إذا أردت عرض أزرار الانتقاء بشكل أفقي يمكنك استخدام الخاصية <code>data-role="controlgroup"‎</code> والخاصية <code>data-type="horizontal"‎</code> لكن ستكون أزرار الانتقاء كصف من الأزرار القياسية عوضًا عن سطر من أزرار الانتقاء.
</p>

<p>
	تشبه <a href="https://wiki.hsoub.com/HTML/input/checkbox" rel="external">مربعات الاختيار</a> أزرار الانتقاء، لكنها تسمح للمستخدم باختيار العدد الذي يرغب به من العناصر بدلا من تحديد عنصر واحد. وتمامًا مثل أزرار الانتقاء، يجب عليك إرفاق عنصر واصف (label) لكل عنصر <code>checkbox</code> حتى يتمكن jQuery Mobile من إنشاء شريط سهل اللمس.
</p>

<p>
	يجب عليك لإنشاء مربعات الاختيار البدء بعنصر الإدخال وإضافة الخاصية <code>type="checkbox"‎</code>، ويجب أن يشبه مربع الاختيار لهذا المقتطف:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_36" style="">
<span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"checkbox"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"checkbox-1"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"checkbox-1"</span><span class="pln"> </span><span class="tag">/&gt;</span></pre>

<p>
	يمكنك جمع مربعات الاختيار معا باستخدام عنصر الحاوية (container) مع الخاصية <code>data-role="controlgroup"‎</code>.
</p>

<h4 id="-64-jquery-mobile-">
	مثال 64: إنشاء أزرار انتقاء ومربعات الاختيار في نموذج باستخدام jQuery Mobile.
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_38" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Forms with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Forms in jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"login"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"login"</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"login.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"POST"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;fieldset&gt;</span><span class="pln">
              </span><span class="tag">&lt;legend&gt;</span><span class="pln">Radio Buttons:</span><span class="tag">&lt;/legend&gt;</span><span class="pln">
              </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"radio"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"radio-group-1"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"radio1"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Male"</span><span class="pln"> </span><span class="atn">checked</span><span class="pun">=</span><span class="atv">"checked"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
              </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"radio1"</span><span class="tag">&gt;</span><span class="pln">Male</span><span class="tag">&lt;/label&gt;</span><span class="pln">
              </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"radio"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"radio-group-1"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"radio2"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Female"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
              </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"radio2"</span><span class="tag">&gt;</span><span class="pln">Female</span><span class="tag">&lt;/label&gt;</span><span class="pln">
            </span><span class="tag">&lt;/fieldset&gt;</span><span class="pln">
            </span><span class="tag">&lt;fieldset</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;legend&gt;</span><span class="pln">Using a controlgroup:</span><span class="tag">&lt;/legend&gt;</span><span class="pln">
              </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"radio"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"radio-group-2"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"radio3"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Boy"</span><span class="pln"> </span><span class="atn">checked</span><span class="pun">=</span><span class="atv">"checked"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
              </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"radio3"</span><span class="tag">&gt;</span><span class="pln">Boy</span><span class="tag">&lt;/label&gt;</span><span class="pln">
              </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"radio"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"radio-group-2"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"radio4"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Girl"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
              </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"radio4"</span><span class="tag">&gt;</span><span class="pln">Girl</span><span class="tag">&lt;/label&gt;</span><span class="pln">
            </span><span class="tag">&lt;/fieldset&gt;</span><span class="pln">
          </span><span class="tag">&lt;/div&gt;</span><span class="pln">
          </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;fieldset&gt;</span><span class="pln">
              </span><span class="tag">&lt;legend&gt;</span><span class="pln">Checkboxes:</span><span class="tag">&lt;/legend&gt;</span><span class="pln">
              </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"checkbox"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"checkbox-1"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"checkbox-1"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
              </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"checkbox-1"</span><span class="tag">&gt;</span><span class="pln">Advice</span><span class="tag">&lt;/label&gt;</span><span class="pln">
              </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"checkbox"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"checkbox-2"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"checkbox-2"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
              </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"checkbox-2"</span><span class="tag">&gt;</span><span class="pln">Condemn</span><span class="tag">&lt;/label&gt;</span><span class="pln">
            </span><span class="tag">&lt;/fieldset&gt;</span><span class="pln">
            </span><span class="tag">&lt;fieldset</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;legend&gt;</span><span class="pln">Grouping checkboxes:</span><span class="tag">&lt;/legend&gt;</span><span class="pln">
              </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"checkbox"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"checkbox-3"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"checkbox-3"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
              </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"checkbox-3"</span><span class="tag">&gt;</span><span class="pln">Microsoft</span><span class="tag">&lt;/label&gt;</span><span class="pln">
              </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"checkbox"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"checkbox-4"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"checkbox-4"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
              </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"checkbox-4"</span><span class="tag">&gt;</span><span class="pln">Adobe</span><span class="tag">&lt;/label&gt;</span><span class="pln">
            </span><span class="tag">&lt;/fieldset&gt;</span><span class="pln">
          </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln"> 
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30801" href="https://academy.hsoub.com/uploads/monthly_2019_07/img14.png.7977b7f13c21dedd70a40e0aea783286.png" rel=""><img alt="img14.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30801" data-unique="ky2folkp3" src="https://academy.hsoub.com/uploads/monthly_2019_07/img14.thumb.png.ef627f5ca4374000de4be45dd2277294.png"></a>
</p>

<h3 id="-select-">
	العنصر <code>select</code>
</h3>

<p>
	يختلف العنصر <a href="https://wiki.hsoub.com/HTML/select" rel="external"><code>select</code></a> قليلا عن بقية العناصر لأنه لا يقوم بتمديد عنصر الإدخال، وبدلا من ذلك يتصرف كحاوي لعناصر الخيارات. كل عنصر اختيار لديه قيمة ويحتوي على نص، ويظهر هذا النص عند الضغط عليه أو لمس العنصر select، وعندما يرى المستخدم عناصر الخيارات ويختار واحد منها، ستصبح قيمته هي قيمة العنصر select.
</p>

<p>
	نمط عنصر الاختيار في jQuery Mobile هو زر مع سهم يشير للأسفل، كما أنه يأخذ مساحة كبيرة حسب ما يتاح له و يمكن استخدامه مع حاوية تملك الخاصية <code>data-role="fieldcontain"‎</code> لوضع تسمية وتحديد العناصر على نفس السطر (إذا كان هنالك مساحة كافية على الشاشة).
</p>

<h4 id="-65-jquery-mobile-select-">
	مثال 65: استخدام jQuery Mobile لإنشاء عنصر select في نموذج
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_40" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Forms with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Forms in jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"login"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"login"</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"login.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"POST"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"size-select"</span><span class="tag">&gt;</span><span class="pln">Select your Size:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
        </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"size-select"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"size-select"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"small"</span><span class="tag">&gt;</span><span class="pln">small</span><span class="tag">&lt;/option&gt;</span><span class="pln">
          </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"medium"</span><span class="tag">&gt;</span><span class="pln">medium</span><span class="tag">&lt;/option&gt;</span><span class="pln">
          </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"large"</span><span class="tag">&gt;</span><span class="pln">large</span><span class="tag">&lt;/option&gt;</span><span class="pln">
        </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"radius-select"</span><span class="tag">&gt;</span><span class="pln">Choose a Radius</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"radius-select"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"radius-select"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"radius-5"</span><span class="tag">&gt;</span><span class="pln">5</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"radius-15"</span><span class="tag">&gt;</span><span class="pln">15</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"radius-25"</span><span class="tag">&gt;</span><span class="pln">25</span><span class="tag">&lt;/option&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;fieldset</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;legend&gt;</span><span class="pln">Set Time:</span><span class="tag">&lt;/legend&gt;</span><span class="pln">
            </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"hour-select"</span><span class="tag">&gt;</span><span class="pln">Hour</span><span class="tag">&lt;/label&gt;</span><span class="pln">
            </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"hour-select"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"hour-select"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option&gt;</span><span class="pln">Hour</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"hour-08"</span><span class="tag">&gt;</span><span class="pln">08</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"hour-09"</span><span class="tag">&gt;</span><span class="pln">09</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"hour-10"</span><span class="tag">&gt;</span><span class="pln">10</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/select&gt;</span><span class="pln">
            </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"minute-select"</span><span class="tag">&gt;</span><span class="pln">Minute</span><span class="tag">&lt;/label&gt;</span><span class="pln">
            </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"minute-select"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"minute-select"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option&gt;</span><span class="pln">Minute</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"minute-10"</span><span class="tag">&gt;</span><span class="pln">10</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"minute-20"</span><span class="tag">&gt;</span><span class="pln">20</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"minute-30"</span><span class="tag">&gt;</span><span class="pln">30</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/select&gt;</span><span class="pln">
          </span><span class="tag">&lt;/fieldset&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30802" href="https://academy.hsoub.com/uploads/monthly_2019_07/img15.png.ed64bb86474e3e6603b632bfcc84b3e9.png" rel=""><img alt="img15.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30802" data-unique="6xqmdwbq2" src="https://academy.hsoub.com/uploads/monthly_2019_07/img15.thumb.png.e7b983e9a49ff17141393b5284ffb76d.png"></a>
</p>

<h3 id="-">
	عناصر إدخال إضافية
</h3>

<p>
	تملك أجهزة الهاتف طرقًا أخرى جديدة لجمع مدخلات المستخدم، كان بعضها موجود لمتصفحات حواسيب سطح المكتب لبعض الوقت، لكن لم تُستخدم كفاية لتُعتبر شائعة.
</p>

<p>
	عند التفكير في ميزات التحكم أو الإدخال المختلفة للهاتف، غالبا ما ستتضمن شريط تمرير لتغيير الإعدادات، مفتاح تبديل إعداد إلى آخر وميزة البحث، وكلها مدعومة في jQuery Mobile.
</p>

<h4 id="-slider-">
	شريط التمرير (slider)
</h4>

<p>
	يُستخدم شريط التمرير في الصفحات التي يجب فيها على المستخدم أن يضغط/يلمس ويسحب لتحديد قيمة بدلا من كتابتها، وهذا يجعل لشريط التمرير فوائد كثيرة كالتحكم في مستوى الصوت، أو السطوع، أو حتى للاستخدام على الصفحات التي تقوم بعمليات حسابية. ألق نظرة على الشيفرة البرمجية التالية وحاول معرفة ما تفعله كل خاصية:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_42" style="">
<span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"range"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"slider"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"slider"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"10"</span><span class="pln"> </span><span class="atn">min</span><span class="pun">=</span><span class="atv">"0"</span><span class="pln"> </span><span class="atn">max</span><span class="pun">=</span><span class="atv">"100"</span><span class="pln"> </span><span class="tag">/&gt;</span></pre>

<p>
	يبحث jQuery Mobile على <code>type="range"‎</code> لإنشاء شريط التمرير، ونعم، حتى لو كان نوعه <code>type="range"‎</code> فهو شريط تمرير.
</p>

<p>
	لا يوجد شيء مميز حول الخاصيتين <code>name</code> و <code>id</code>، فهما يعملان بنفس الطريقة التي تعمل بها عناصر الإدخال الأخرى. ومع ذلك، فإن الخاصية <code>value</code> مهمة لأنها تحدد أين يبدأ زر المنزلق/المقبض. تحدد الخاصية <code>min</code> أقل قيمة يمكن الوصول إليها. وأما الخاصية <code>max</code> فهي تحدد أقصى قيمة مسموح بها.
</p>

<p>
	يجب عليك استخدام تسمية مع كل شريط تمرير تُضمّنه في صفحتك، وينبغي أن يتم هذا ليس فقط للعرض وقابلية الوصول، بل لأنه مطلوب عند استخدام jQuery Mobile.
</p>

<h5 id="-66-jquery-mobile-">
	مثال 66: استخدام jQuery mobile لإضافة أشرطة تمرير داخل النموذج
</h5>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_44" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Forms with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Forms in jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"volume"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"volume"</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"volume.php"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label&gt;</span><span class="pln">Bass:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"range"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="atn">min</span><span class="pun">=</span><span class="atv">"10"</span><span class="pln"> </span><span class="atn">max</span><span class="pun">=</span><span class="atv">"110"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"80"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label&gt;</span><span class="pln">Mid:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"range"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="atn">min</span><span class="pun">=</span><span class="atv">"0"</span><span class="pln"> </span><span class="atn">max</span><span class="pun">=</span><span class="atv">"90"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"80"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label&gt;</span><span class="pln">Treble:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"range"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="atn">min</span><span class="pun">=</span><span class="atv">"5"</span><span class="pln"> </span><span class="atn">max</span><span class="pun">=</span><span class="atv">"105"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"80"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30803" href="https://academy.hsoub.com/uploads/monthly_2019_07/img16.png.035b85da3132a76adcf0ff43b64b62d6.png" rel=""><img alt="img16.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30803" data-unique="v96xz0dsx" src="https://academy.hsoub.com/uploads/monthly_2019_07/img16.thumb.png.3d230de8f0abac7f4b4229195c48874f.png"></a>
</p>

<h4 id="-flip-toggle-switch-">
	زر القاطعة (flip toggle switch)
</h4>

<p>
	يشبه زر القاطعة عملية النفي الثنائية (not) المطبقة على بت واحد، إما أنه مشتغل (on) أو أنه مطفأ (off)، وهذا المفتاح شائع في الإعدادات حيث يمكنك تشغيل أجزاء مختلفة من الهاتف أو تطفئها.
</p>

<p>
	ستحتاج لإنشاء زر القاطعة إلى البدء بعنصر <code>select</code> يملك عنصري <code>option</code>، ومن ثم تضيف الخاصية <code>data-role="slider"‎</code> إلى العنصر <code>select</code>. وكما في عناصر الإدخال الأخرى، يمكنك وضع الزر داخل حاوية باستخدام <code>data-role="fieldcontain"‎</code> لإبقاء التسمية والزر في نفس السطر (إذا كانت المساحة متوفرة).
</p>

<h5 id="-67-jquery-mobile-">
	مثال 67: استخدام jQuery Mobile لإنشاء زر قاطعة
</h5>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_46" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Forms with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Flip in Forms using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"flip"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"flip"</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"flipswitch.php"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"flip-1"</span><span class="tag">&gt;</span><span class="pln">Brightness:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
        </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"flip-1"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"flip-1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"slider"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Bright"</span><span class="tag">&gt;</span><span class="pln">Bright</span><span class="tag">&lt;/option&gt;</span><span class="pln">
          </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Dark"</span><span class="tag">&gt;</span><span class="pln">Dark</span><span class="tag">&lt;/option&gt;</span><span class="pln">
        </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"flip-2"</span><span class="tag">&gt;</span><span class="pln">Flip switch:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"flip-2"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"flip-2"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"slider"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Loud"</span><span class="tag">&gt;</span><span class="pln">Loud</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Silent"</span><span class="tag">&gt;</span><span class="pln">Silent</span><span class="tag">&lt;/option&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30804" href="https://academy.hsoub.com/uploads/monthly_2019_07/img17.png.02c01dd5fa9b074183182470119d2337.png" rel=""><img alt="img17.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30804" data-unique="zybidzflg" src="https://academy.hsoub.com/uploads/monthly_2019_07/img17.thumb.png.3ce211fa3392feb6dedbacde73b72cfb.png"></a>
</p>

<h4 id="-">
	حقل البحث
</h4>

<p>
	حقل البحث هو نوع جديد من المدخلات والذي هو جزء من مميزات HTML5، هذا الحقل هو حقل نص مُحسّن يحتوي على أيقونة لمساعدة المستخدمين على معرفة ما هو عليه، وعندما يبدأ المستخدم بكتابة شيء معين ستظهر أيقونة عند الضغط عليها أو لمسها ستحذف جميع مدخلات نص المستخدم في الحقل.
</p>

<p>
	لإنشاء حقل بحث، استخدم هذا المقتطف:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_48" style="">
<span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"search"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"search-input"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"search-input"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="tag">/&gt;</span></pre>

<p>
	كما في العناصر الأخرى التي تناولناها حتى الساعة، تأكد من تضمين التسمية (label) لزيادة إمكانية الوصول إلى النموذج، ويمكنك أيضا استخدام حاوية مع <code>data-role="fieldcontain"‎</code> لإبقاء التسمية وحقل البحث في نفس السطر إذا كانت هنالك مساحة كافية على الشاشة.
</p>

<h5 id="-68-jquery-mobile">
	مثال 68: إنشاء حقل بحث باستخدام jQuery Mobile
</h5>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_50" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Forms with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Search in Forms using jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"search-form"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"search-form"</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"search.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"get"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"search-1"</span><span class="tag">&gt;</span><span class="pln">Search the site:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
        </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"search"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"search-1"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"search-1"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"search-2"</span><span class="tag">&gt;</span><span class="pln">Find:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"search"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"search-2"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"search-2"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">""</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<img alt="img18.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30805" data-unique="r948xptia" src="https://academy.hsoub.com/uploads/monthly_2019_07/img18.png.d53b6565e3671d939f2d30df71d1a5fa.png"></p>

<h2>
	استخدام الإضافات
</h2>

<p>
	يمكنك إضافة الإضافات بطرق مختلفة لأنها تغطي أي شيء ترغب في إضافته إلى المكتبة الرئيسية. بعض الإضافات عبارة على ملفات JavaScript التي تُضمّنها مع jQuery Mobile، والأخريات هي عبارة عن ملفات CSS إضافية.
</p>

<p>
	سنلقي نظرة سريعة على استخدام إضافة 960 شبكة (960 grid) مع صفحة تستخدم jQuery Mobile. إن ‏960‏ grid‏‏ عبارة عن نظام شبكة مشهور في مواقع ويب سطح المكتب، فهي تسمح للصفحات بأن تكون مرنة وتسمح للمحتوى بالتمدد والتقلص استنادًا إلى المساحة القابلة للعرض في المتصفح.
</p>

<p>
	Jquery Mobile هو بوابة لإضافة 960 grid لهذا النظام ويمكنك الحصول عليها من <a href="http://jeromeetienne.github.com/jquery-mobile-960/" rel="external nofollow">هنا</a>.
</p>

<h3 id="-69-jquery-mobile-html-">
	مثال 69: استخدام إضافات jQuery Mobile في إعدادات شيفرة HTML قياسية
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5684_52" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Developing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://jeromeetienne.github.com/jquery-mobile-960/css/jquery-mobile-fluid960.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">960gs plugin example</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"container_12"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"grid_2"</span><span class="tag">&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">2 column</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"grid_6"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">6 column</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;p&gt;</span><span class="pln">The fluid grid allows this layout to adapt to screen size</span><span class="tag">&lt;/p&gt;</span><span class="pln">
          </span><span class="tag">&lt;p&gt;</span><span class="pln">You can see how it adjusts by changing device orientation</span><span class="tag">&lt;/p&gt;</span><span class="pln">
          </span><span class="tag">&lt;p&gt;</span><span class="pln">When orientation changes, the size of the columns changes</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"grid_4"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">4 column</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30806" href="https://academy.hsoub.com/uploads/monthly_2019_07/img19.png.d9b954054c91e9e62d76842b1ceeafc7.png" rel=""><img alt="img19.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30806" data-unique="nvf409d22" src="https://academy.hsoub.com/uploads/monthly_2019_07/img19.thumb.png.fa92e94c6da4cdcc6ad13f7309966ae1.png"></a>
</p>

<h3 id="-">
	عرض تجريبي: تخطيط مواقع بسيطة لكن متجاوبة
</h3>

<ul>
<li>
		العرض التجريبي الأول: تخطيط ومعاينة موقع ملف
	</li>
</ul>
<p style="text-align: center;">
	<img alt="img20.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30807" data-unique="ly8ikaoiw" src="https://academy.hsoub.com/uploads/monthly_2019_07/img20.png.92b48486e3bc54b31784b53cf4f10811.png"></p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30808" href="https://academy.hsoub.com/uploads/monthly_2019_07/img21.png.04cc14d533d98ed9835cf84eb5b03d53.png" rel=""><img alt="img21.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30808" data-unique="cxpyi8xll" src="https://academy.hsoub.com/uploads/monthly_2019_07/img21.thumb.png.3eceb3e7d321aee191e24d7c7aeaf51d.png"></a>
</p>

<ul>
<li>
		عرض تجريبي 2: تخطيط الأجهزة اللوحية
	</li>
</ul>
<p style="text-align: center;">
	<img alt="img22.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30809" data-unique="08cyykhdg" src="https://academy.hsoub.com/uploads/monthly_2019_07/img22.png.28fa6fd859dbbc7b6047056c3ba50a5c.png"></p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30810" href="https://academy.hsoub.com/uploads/monthly_2019_07/img23.png.265189f65f31c4acd407eed07208a1ea.png" rel=""><img alt="img23.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30810" data-unique="wia612akj" src="https://academy.hsoub.com/uploads/monthly_2019_07/img23.thumb.png.1b6b8b6dbc5f93592e5db424cbf64292.png"></a>
</p>

<ul>
<li>
		عرض تجريبي 3: تخطيط سطح المكتب
	</li>
</ul>
<p style="text-align: center;">
	<img alt="img24.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30811" data-unique="2vc6k6wrg" src="https://academy.hsoub.com/uploads/monthly_2019_07/img24.png.5e192b3d8df70050253e7c4ec06fa7e1.png"></p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30812" href="https://academy.hsoub.com/uploads/monthly_2019_07/img25.png.74f568e6c6d67cd29da114f90ed8ef40.png" rel=""><img alt="img25.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30812" data-unique="5aif42vd4" src="https://academy.hsoub.com/uploads/monthly_2019_07/img25.thumb.png.11433bb5d60a6d754014c178ee167d6e.png"></a>
</p>

<ul>
<li>
		عرض تجريبي 4: مثال jQuery Mobile بسيط
	</li>
</ul>
<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30813" href="https://academy.hsoub.com/uploads/monthly_2019_07/img26.png.056e0f3c218e9d704a6258d98046318f.png" rel=""><img alt="img26.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30813" data-unique="kt375ctqp" src="https://academy.hsoub.com/uploads/monthly_2019_07/img26.thumb.png.5376e1740e4161767c75454d7e59ac3d.png"></a>
</p>

<p>
	ترجمة -وبتصرّف- للمقال <a href="https://www.script-tutorials.com/jquery-mobile-lesson-6/" rel="external nofollow">jQuery Mobile Lesson 6</a> لصاحبه Andrew
</p>

<h2>
	اقرأ أيضًا
</h2>

<ul>
<li>
		الدرس السابق: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AE%D8%A7%D9%85%D8%B3-%D8%A7%D9%84%D8%A3%D9%8A%D9%82%D9%88%D9%86%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%B2%D8%B1%D8%A7%D8%B1-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D8%A7%D8%AA-%D9%85%D8%AE%D8%B5%D8%B5%D8%A9-r717/" rel="">الأيقونات والأزرار وإنشاء تنسيقات مخصصة</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D8%B7%D8%A8%D9%8A%D9%82%D8%A7%D8%AA-%D9%88%D9%8A%D8%A8-%D8%B0%D8%A7%D8%AA-%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%AD%D9%8A%D8%AF%D8%A9-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-jquery-r403/" rel="">إنشاء تطبيقات ويب ذات صفحة وحيدة باستخدام jQuery</a>
	</li>
</ul>
]]></description><guid isPermaLink="false">718</guid><pubDate>Tue, 23 Jul 2019 10:45:40 +0000</pubDate></item><item><title>&#x627;&#x644;&#x62F;&#x631;&#x633; &#x627;&#x644;&#x62E;&#x627;&#x645;&#x633;: &#x627;&#x644;&#x623;&#x64A;&#x642;&#x648;&#x646;&#x627;&#x62A; &#x648;&#x627;&#x644;&#x623;&#x632;&#x631;&#x627;&#x631; &#x648;&#x625;&#x646;&#x634;&#x627;&#x621; &#x62A;&#x646;&#x633;&#x64A;&#x642;&#x627;&#x62A; &#x645;&#x62E;&#x635;&#x635;&#x629;</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AE%D8%A7%D9%85%D8%B3-%D8%A7%D9%84%D8%A3%D9%8A%D9%82%D9%88%D9%86%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%B2%D8%B1%D8%A7%D8%B1-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D8%A7%D8%AA-%D9%85%D8%AE%D8%B5%D8%B5%D8%A9-r717/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2019_07/5d36d86e20737_.jpg.4387b6cd0175feb1d9433b33e9c36c6c.jpg" /></p>

<p>
	في درسنا الخامس اليوم، سنتحدث عن المجموعة المدمجة من الأيقونات، ووضع الأيقونة، وإنشاء أزرار مخصصة، واستخدام النماذج اللونية (swatches)، وإنشاء قوالب مخصصة …إلخ. جميع الأمثلة ستكون مدعومة بمقتطفات من الشيفرة البرمجية.
</p>

<p>
	هذا الدرس جزء من <a href="https://academy.hsoub.com/tags/jquery%20mobile/" rel="">سلسلة دروس تشرح jQuery Mobile</a>:
</p>

<ul>
<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%A3%D9%88%D9%84-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9%D8%8C-%D8%A8%D9%86%D8%A7%D8%A1-%D9%88%D8%AA%D9%82%D8%AF%D9%8A%D9%85-%D9%85%D8%AD%D8%AA%D9%88%D9%89-r629/" rel="">الدرس الأول: البداية، بناء وتقديم محتوى</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%86%D9%8A-%D8%A7%D9%84%D8%AA%D8%B6%D9%85%D9%8A%D9%86%D8%8C-%D8%AA%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9%D8%8C-%D8%A7%D9%84%D8%AA%D9%86%D9%82%D9%84-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-%D8%A7%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-r633/" rel="">الدرس الثاني: التضمين، تهيئة الصفحة، التنقل بين الصفحات وأحداث التحميل</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%84%D8%AB-%D8%A7%D8%AA%D8%AC%D8%A7%D9%87-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB%D9%87%D8%A7-r702/" rel="">الدرس الثالث: اتجاه الصفحة وأحداثها</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D8%B1%D8%A8%D8%B7-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AE%D8%A7%D8%B1%D8%AC%D9%8A%D8%A9-%D9%88%D8%AA%D9%86%D8%B8%D9%8A%D9%85-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D8%A8%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A9-%D9%88%D8%A8%D9%86%D8%A7%D8%A1-%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%B7%D9%8A-r703/" rel="">الدرس الرابع: ربط صفحات خارجية وتنظيم المحتوى بنظام الشبكة وبناء محتوى قابل للطي</a>
	</li>
	<li>
		الدرس الخامس: الأيقونات والأزرار وإنشاء تنسيقات مخصصة
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B3%D8%A7%D8%AF%D8%B3-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%A7%D9%84%D9%82%D9%88%D8%A7%D8%A6%D9%85-%D9%88%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D9%87%D8%A7-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D9%86%D9%85%D8%A7%D8%B0%D8%AC-%D8%A7%D9%84%D8%A8%D8%AD%D8%AB-%D9%88%D8%AA%D8%B3%D8%AC%D9%8A%D9%84-%D8%A7%D9%84%D8%AF%D8%AE%D9%88%D9%84-r718/" rel="">الدرس السادس: إنشاء القوائم وتنسيقها وإنشاء نماذج البحث وتسجيل الدخول</a>
	</li>
</ul>
<h2 id="-">
	إضافة الأيقونات إلى الأزرار
</h2>

<p>
	تسمح لنا هذه الصور أو الأيقونات معرفة ما هو الزر دون الحاجة إلى قراءة محتواه الذي يدل على وظيفته، كما أنها تجعل بعض الأزرار تظهر يحجم أقل إذا لم يكن هنالك مساحة كافية الأمر الذي يساعد على توضيح ما يفترض القيام به.
</p>

<h2 id="-jquery">
	استخدام مجموعة الأيقونات المضمنة في jQuery
</h2>

<p>
	يأتي jQuery Mobile مع مجموعة مدمجة من الأيقونات التي يمكنك استخدامها على أزرارك لتساعدك على جعل التصميم أفضل لأجهزة الهاتف. يمكنك تطبيق هذه الأيقونات على الأزرار بإضافة الخاصية <code>data-icon=""‎</code> إلى العنصر الذي تستخدمه كزر. القيمة الموجودة في هذه الخاصية هي الأيقونة التي تريد عرضها في الزر؛ فعلى سبيل المثال، إذا أردت عرض أيقونة البحث في الزر استخدم الخاصية <code>data-icon="search"‎</code> على العنصر الذي تستخدمه كزر.
</p>

<p>
	الأيقونات الموجودة هي:
</p>

<ul>
<li>
		السهم الأيسر – <code>data-icon="arrow-l"‎</code>
	</li>
	<li>
		السهم الأيمن – <code>data-icon="arrow-r"‎</code>
	</li>
	<li>
		السهم العلوي – <code>data-icon="arrow-u"‎</code>
	</li>
	<li>
		السهم السفلي – <code>data-icon="arrow-d"‎</code>
	</li>
	<li>
		حذف – <code>data-icon="delete"‎</code>
	</li>
	<li>
		الجمع – <code>data-icon="plus"‎</code>
	</li>
	<li>
		الطرح – <code>data-icon="minus"‎</code>
	</li>
	<li>
		التأكد – <code>data-icon="check"‎</code>
	</li>
	<li>
		أداة – <code>data-icon="gear"‎</code>
	</li>
	<li>
		التحديث – <code>data-icon="refresh"‎</code>
	</li>
	<li>
		التقدم إلى الأمام – <code>data-icon="forward"‎</code>
	</li>
	<li>
		الرجوع إلى الخلف – <code>data-icon="back"‎</code>
	</li>
	<li>
		الشبكة – <code>data-icon="grid"‎</code>
	</li>
	<li>
		نجمة – <code>data-icon="star"‎</code>
	</li>
	<li>
		إنذار – <code>data-icon="alert"‎</code>
	</li>
	<li>
		معلومة – <code>data-icon="info"‎</code>
	</li>
	<li>
		منزل – <code>data-icon="home"‎</code>
	</li>
	<li>
		بحث – <code>data-icon="search"‎</code>
	</li>
</ul>
<h3 id="-38-">
	مثال 38: إضافة أيقونات إلى الزر
</h3>

<p>
	يمكن إنشاء أزرار الروابط عن طريق استخدام <code>-role="button"‎</code>. يملك كل زر أيقونة مختلفة عن طريق استخدام <code>data-icon="back"‎</code>، و <code>dataicon="home"‎</code>، و <code>data-icon="forward"‎</code> وسيضيف هذا أيقونات jQuery الافتراضية إلى الأزرار الموجود في الصور في الأسفل:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_6" style="">
<span class="pln"> </span><span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Default icons in jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-fullscreen</span><span class="pun">=</span><span class="atv">"false"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"back"</span><span class="tag">&gt;</span><span class="pln">Previous</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Default Icon </span><span class="tag">&lt;/h1&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"gear"</span><span class="tag">&gt;</span><span class="pln">Settings</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"back"</span><span class="tag">&gt;</span><span class="pln">Back</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Home</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"forward"</span><span class="tag">&gt;</span><span class="pln">Forward</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"features.html"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"supports.html"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"contacts.html"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30767" href="https://academy.hsoub.com/uploads/monthly_2019_07/img1.png.59badb65c0f4af47440e64d4ffe06b56.png" rel=""><img alt="img1.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30767" data-unique="ewcba4phk" src="https://academy.hsoub.com/uploads/monthly_2019_07/img1.thumb.png.6b1ddbe588a312ba6ca490a5f07cf048.png"></a>
</p>

<h2 id="-jquery-mobile-">
	وضع أيقونات jQuery Mobile الافتراضية في أماكن مختلفة في الزر
</h2>

<p>
	هذا هو السلوك الافتراضي لمكان الأيقونة على الأزرار، يمكننا تغيير مكان الأيقونة باستخدام خاصية <code>data-iconpos=""‎</code> مع القيمة <code>top</code>، أو <code>right</code>، أو <code>bottom</code> وستكون الأيقونة في المكان الذي تخبرها بها، يمكننا أيضا استخدام القيمة <code>notext</code> لإبقاء الأيقونة على الزر وحذف النص، وهذا سيغير من حجم الزر ليكون أكبر بقليل من حجم الأيقونة نفسها ويمكن أن يكون مفيدا عندما تحتاج إلى وضع عدة أزرار على سطر واحد لشاشة صغيرة.
</p>

<h3 id="-39-data-iconpos-">
	مثال 39: استخدام الخاصية <code>data-iconpos</code> في تحديد مكان الأيقونة في الزر
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_8" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Default icons in jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-fullscreen</span><span class="pun">=</span><span class="atv">"false"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Buy Me</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Full Screen </span><span class="tag">&lt;/h1&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Apply Now</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Use of data-iconpos Attribute in defining Icon placement in button</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"back"</span><span class="tag">&gt;</span><span class="pln">Back</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="pln"> </span><span class="atn">data-iconpos</span><span class="pun">=</span><span class="atv">"top"</span><span class="tag">&gt;</span><span class="pln">Home</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"forward"</span><span class="pln"> </span><span class="atn">data-iconpos</span><span class="pun">=</span><span class="atv">"right"</span><span class="tag">&gt;</span><span class="pln">Forward</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"gear"</span><span class="pln"> </span><span class="atn">data-iconpos</span><span class="pun">=</span><span class="atv">"bottom"</span><span class="tag">&gt;</span><span class="pln">Config</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"info"</span><span class="pln"> </span><span class="atn">data-iconpos</span><span class="pun">=</span><span class="atv">"notext"</span><span class="tag">&gt;</span><span class="pln">information</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"features.html"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"supports.html"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"contacts.html"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30768" href="https://academy.hsoub.com/uploads/monthly_2019_07/img2.png.289f666b5d0181dd4a0dadcaa433f4d9.png" rel=""><img alt="img2.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30768" data-unique="4fl74td3b" src="https://academy.hsoub.com/uploads/monthly_2019_07/img2.thumb.png.aa1a101365d14965105b06f91378f472.png"></a>
</p>

<h2 id="-">
	إنشاء أيقونات مخصصة
</h2>

<p>
	ربما لاحظت أن جميع الأيقونات المتضمنة موجودة في أعلى دائرة أو قرص، وهذا سيساعد على إبراز الأيقونة وعملها على أي لون خلفية، يجب أن يناسب هذا القرص مساحة 18×18 بيكسل، وهذا معناه أنه عندما تصمم زر مخصص، ستحتاج إلى إضافة مساحة بعض البيكسلات حتى لا تظهر الأيقونة مقتطعة أو خارج مكانها عن وضع القرض.
</p>

<p>
	أنشئنا قرص الأيقونة وأضفنا الأيقونة باستخدام مقتطف شيفرة البرمجيةCSS:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_10" style="">
<span class="tag">&lt;style&gt;</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">icon</span><span class="pun">-</span><span class="pln">custom</span><span class="pun">-</span><span class="pln">cart</span><span class="pun">-</span><span class="pln">icon </span><span class="pun">{</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> url</span><span class="pun">(</span><span class="str">"godwins_customize_cart-icon.png"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="lit">@media</span><span class="pln"> only screen </span><span class="kwd">and</span><span class="pln"> </span><span class="pun">(-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">min</span><span class="pun">-</span><span class="pln">device</span><span class="pun">-</span><span class="pln">pixel</span><span class="pun">-</span><span class="pln">ratio</span><span class="pun">:</span><span class="pln"> </span><span class="lit">2</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">icon</span><span class="pun">-</span><span class="pln">custom</span><span class="pun">-</span><span class="pln">cart</span><span class="pun">-</span><span class="pln">icon </span><span class="pun">{</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> url</span><span class="pun">(</span><span class="str">"customised_cart-icon.png"</span><span class="pun">);</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">size</span><span class="pun">:</span><span class="pln"> </span><span class="lit">18px</span><span class="pln"> </span><span class="lit">18px</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
</span><span class="tag">&lt;/style&gt;</span></pre>

<p>
	ثم أضفه إلى شيفرة HTML الخاص بنا كما هو موضح أدناه:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_12" style="">
<span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"custom-cart-icon"</span><span class="tag">&gt;</span><span class="pln">Customised Cart icon</span><span class="tag">&lt;/a&gt;</span><span class="pln">
</span><span class="tag">&lt;/div&gt;</span></pre>

<h3 id="-40-">
	مثال 40: تطبيق زر مخصص على الزر
</h3>

<p>
	استخدمنا الخاصية <code>data-icon</code> ومررنا لها قيمة مخصصة، تُستخدم القيمة <code>custom-cart-icon</code> لتوليد صف باسم <code>ui-icon-custom-cart-icon</code>:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_14" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Cutomized icons in jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style&gt;</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">icon</span><span class="pun">-</span><span class="pln">custom</span><span class="pun">-</span><span class="pln">cart</span><span class="pun">-</span><span class="pln">icon </span><span class="pun">{</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> url</span><span class="pun">(</span><span class="str">"godwins_customize_cart-icon.png"</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="lit">@media</span><span class="pln"> only screen </span><span class="kwd">and</span><span class="pln"> </span><span class="pun">(-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">min</span><span class="pun">-</span><span class="pln">device</span><span class="pun">-</span><span class="pln">pixel</span><span class="pun">-</span><span class="pln">ratio</span><span class="pun">:</span><span class="pln"> </span><span class="lit">2</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">icon</span><span class="pun">-</span><span class="pln">custom</span><span class="pun">-</span><span class="pln">cart</span><span class="pun">-</span><span class="pln">icon </span><span class="pun">{</span><span class="pln">
        background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> url</span><span class="pun">(</span><span class="str">"customised_cart-icon.png"</span><span class="pun">);</span><span class="pln">
        background</span><span class="pun">-</span><span class="pln">size</span><span class="pun">:</span><span class="pln"> </span><span class="lit">18px</span><span class="pln"> </span><span class="lit">18px</span><span class="pun">;</span><span class="pln">
      </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-fullscreen</span><span class="pun">=</span><span class="atv">"false"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"back"</span><span class="tag">&gt;</span><span class="pln">Previous</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Custom Icon </span><span class="tag">&lt;/h1&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"gear"</span><span class="tag">&gt;</span><span class="pln">Settings</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"custom-cart-icon"</span><span class="tag">&gt;</span><span class="pln">Customised Cart icon</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"features.html"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"supports.html"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"contacts.html"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30769" href="https://academy.hsoub.com/uploads/monthly_2019_07/img3.png.4da973516385daea07cd0074a827ec00.png" rel=""><img alt="img3.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30769" data-unique="s9ptoql0q" src="https://academy.hsoub.com/uploads/monthly_2019_07/img3.thumb.png.107ddb16715ba6a48842bba057d4b466.png"></a>
</p>

<p>
	يُستخدم استعلام الوسائط (media query) للتحقق من دعم متصفح الهاتف للأيقونات عالية الدقة، إذا كان المتصفح يدعمهم، فستعمل شيفرة CSS الموجودة داخل <code>media-query</code>. الخاصية <code>background-image</code> تشير إلى ملف عالي الدقة.
</p>

<p>
	يجب أن تتناسب الصورة مع مساحة 18×18 بيكسل، فبدون تعيين هذه الخاصية، ستحاول الصور الأكبر التوسع وسيكون أغلبها مخفي مع إبقاء جزء صغير من الأيقونة المخصصة ظاهر.
</p>

<h2 id="-">
	استخدام الأيقونات والأصناف
</h2>

<p>
	على الرغم من أن CSS3 يساعد على تقليل حجم الملف، لاتزال بعض الأصول (assets) الثابتة تُستخدم أيضا، لذا جُمعوا معا للتقليل من عدد الملفات الذي يتم تحميلهم عند الحاجة.
</p>

<p>
	يستخدم القالب الحالة 5 ملفات صور ثابتة:
</p>

<ul>
<li>
		ajax-loader.png—هذا هو المُحمل المتحرّك.
	</li>
	<li>
		icons-18-white.png—يحتوي على 22 أيقونة بيضاء.
	</li>
	<li>
		icons-18-black.png—يحتوي على 22 أيقونة سوداء.
	</li>
	<li>
		icons-36-white.png—يحتوي على 22 أيقونة بيضاء ذات دقة عالية.
	</li>
	<li>
		icons-36-black.png—يحتوي على 22 أيقونة سوداء ذات دقة عالية.
	</li>
</ul>
<p>
	الملف ajax-loader.png هو صور للمُحمّل الذي يظهر عند تحميل الصفحات عبر AJAX، أبعاد الصورة هي35×35 بيكسل وتُحمل عن طريق المتصفح عند تحميل الصفحة.
</p>

<p>
	ملفا icons-18-white.png وicons-18-black.png هي نقوش متحركة أفقيا بحجم 776×18 لكل منها، وتحتوي على 22 أيقونة أو صورة بحجم 18×18 بيكسل مفصولة بمساحة 18 بيكسل، أغلب الأيقونات في هذا الملف لا تأخذ مساحة 18×18 كاملة، وهذا لأن القرص الدائري يعمل عبر CSS كخلفية لمساعدة الأيقونات على البقاء ظاهرة على أي مكان تكون فيه. كل صورة لديها ما بين 2 و 4 بيكسل مساحة فارغة حول الحواف لإفساح المجال للقرص.
</p>

<p>
	ملفا icons-36-white.png و icons-36-black.png هي نقوش متحركة تحتوي على نفس الصور كما في الملفات الأولى، ولكن الفرق أنَّ الأيقونات هنا بحجم 36×36 بيكسل مع مساحة 36 بينهم لتستخدم في شاشات العرض عالية الدقة، مثال شاشات Retina™‎. تُحمل هذه الأيقونات عالية الدقة فقط على الأجهزة التي تدعمهم، لذلك لا تقلق حول بطء التحميل على الأجهزة التي لا تستخدمها، ويتم هذا عبر هذا المقتطف الذي يتحقق من توافق الأجهزة:
</p>

<pre class="ipsCode prettyprint lang-css prettyprinted" id="ips_uid_2073_16" style="">
<span class="lit">@media</span><span class="pln"> only screen </span><span class="kwd">and</span><span class="pun">(-</span><span class="pln">webkit </span><span class="pun">-</span><span class="pln"> min </span><span class="pun">-</span><span class="pln"> device </span><span class="pun">-</span><span class="pln"> pixel </span><span class="pun">-</span><span class="pln"> ratio</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1.5</span><span class="pun">),</span><span class="pln">
  only screen </span><span class="kwd">and</span><span class="pun">(</span><span class="pln">min</span><span class="pun">--</span><span class="pln">moz </span><span class="pun">-</span><span class="pln"> device </span><span class="pun">-</span><span class="pln"> pixel </span><span class="pun">-</span><span class="pln"> ratio</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1.5</span><span class="pun">),</span><span class="pln">
  only screen </span><span class="kwd">and</span><span class="pun">(</span><span class="pln">min </span><span class="pun">-</span><span class="pln"> resolution</span><span class="pun">:</span><span class="pln"> </span><span class="lit">240</span><span class="pln"> dpi</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{}</span></pre>

<p>
	إذا كان الجهاز لا يلبي متطلبات استعلام الوسائط، فسيتخطى الشيفرة البرمجية التي بداخله ولن تُحمّل.
</p>

<h2 id="-jquery-mobile-">
	إضافة قوالب jQuery Mobile ونماذج ألوان إلى موقعك
</h2>

<p>
	في jQuery Mobile، القالب (theme) هو تصميم مرئي موحد يُطبّق على الواجهة. من الناحية العملية، يحدد القالب كل شيء من الخطوط إلى إسقاط الظلال إلى الألوان.
</p>

<p>
	تماشيًا مع فكرة فصل التخطيط من اللون والنسيج (texture)، يمكن لقالب jQuery Mobile الحصول على عدة نماذج للألوان، فنماذج الألوان (Swatches) هي مجموعة من الأنماط المُعرَّفة التي يمكن أن تُطبَّق عند استخدام القالب. افتراضيًا، يوجد 5 نماذج للألوان متضمنة في jQuery Mobile، يمكنك تغيير النموذج الافتراضي المُطبَّق على صفحة كاملة بتضمين الخاصية <code>data-theme</code> مع قيمة النموذج الذي تريد تحميله، وعند تحميل الصفحة، جميع المكونات ما عدا الرأس ستحصل على مخطط ألوان ذلك النموذج.
</p>

<p>
	نموذج اللون (swatch) هو مفهوم اللون الموحد (unified color) الذي يحكم ألوان الخلفية والنص والظلال والأيقونة ...إلخ. قالب jQuery Mobile الافتراضي يتضمن 5 نماذج (تسمى a، و b، و c، و d و e) ويوفر كل نموذج تركيز بصري، فسيكون التركيز البصري أكثر وضوحًا مع النموذج a (عادةً نص أبيض على خلفية سوداء)، والنموذج d هو الأكثر ليونة.
</p>

<p>
	النموذج e يمثِّل حالة "الخطأ" (error)، وستكون في معظم الحالات النموذج c هو النموذج الافتراضي في jQuery Mobile، لكن من السهل اختيار نموذج مختلف باستخدام الخاصية <code>data-theme</code>، فيمكن تطبيق هذه الخاصية على أي عنصر وسيُطبَّق تلقائيًّا على العناصر الفرعية.
</p>

<p>
	ومع ذلك، تمت إضافة الخاصية <code>data-theme="b"‎</code> إلى الشيفرة الأساسية اللازمة لإعداد الصفحة، وستغير هذه الخاصية النموذج المُطبّق على كامل الصفحة.
</p>

<p>
	إنتبه إلى أنَّه لن يُغيَّر النموذج للرأس والذيل، ويجب عليك لتغييرهما تضمين الخاصية <code>data-theme</code> بشكل منفصل.
</p>

<h3 id="-41-jquery-mobile-">
	المثال 41: إضافة قوالب jQuery mobile ونماذج ألوان إلى الشيفرة الأساسية لإعداد صفحة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_18" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Swatches</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.11.3.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"b"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Single Swatch</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Look at the button!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">I am a button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-inset</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">List Item 1</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">List Item 2</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">List Item 3</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30770" href="https://academy.hsoub.com/uploads/monthly_2019_07/img5.png.a5af1a3078b544c2d60d2f7e9cbc59db.png" rel=""><img alt="img5.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30770" data-unique="juoyjw2eq" src="https://academy.hsoub.com/uploads/monthly_2019_07/img5.thumb.png.83d2e0bac0d16453f0f60754654e0326.png"></a>
</p>

<h3>
	المثال 42: إضافة نماذج ألوان مشتركة في jQuery mobile
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_20" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Cutomized icons in jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-default"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Default Swatch</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-a"</span><span class="tag">&gt;</span><span class="pln">View swatch a</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-b"</span><span class="tag">&gt;</span><span class="pln">View swatch b</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-c"</span><span class="tag">&gt;</span><span class="pln">View swatch c</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-d"</span><span class="tag">&gt;</span><span class="pln">View swatch d</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-e"</span><span class="tag">&gt;</span><span class="pln">View swatch e</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Some sample form elements and buttons:</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"formprocessor.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"post"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="tag">&gt;</span><span class="pln">Select Your Courses:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">data-native-menu</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">multiple</span><span class="pun">=</span><span class="atv">"multiple"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"choose"</span><span class="pln"> </span><span class="atn">data-placeholder</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Choose...</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Microsoft Supports"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Word"</span><span class="tag">&gt;</span><span class="pln">Word</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Powerpoint"</span><span class="tag">&gt;</span><span class="pln">Powerpoint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Excel"</span><span class="tag">&gt;</span><span class="pln">Excel</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Access"</span><span class="tag">&gt;</span><span class="pln">Access</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Graphic Suite"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"CorelDraw"</span><span class="tag">&gt;</span><span class="pln">CorelDraw</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Adobe Photoshop"</span><span class="pln"> </span><span class="atn">disabled</span><span class="pun">=</span><span class="atv">"disabled"</span><span class="tag">&gt;</span><span class="pln">Adobe Photoshop</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Photoshine"</span><span class="tag">&gt;</span><span class="pln">Photoshine</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Paint"</span><span class="tag">&gt;</span><span class="pln">Paint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="tag">&gt;</span><span class="pln">Yes</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"alert"</span><span class="tag">&gt;</span><span class="pln">No</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Cancel</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer content</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-a"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"a"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Swatch A</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-default"</span><span class="tag">&gt;</span><span class="pln">View default swatch</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-b"</span><span class="tag">&gt;</span><span class="pln">View swatch b</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-c"</span><span class="tag">&gt;</span><span class="pln">View swatch c</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-d"</span><span class="tag">&gt;</span><span class="pln">View swatch d</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-e"</span><span class="tag">&gt;</span><span class="pln">View swatch e</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Some sample form elements and buttons:</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"formprocessor.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"post"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="tag">&gt;</span><span class="pln">Select Your Courses:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">data-native-menu</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">multiple</span><span class="pun">=</span><span class="atv">"multiple"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"choose"</span><span class="pln"> </span><span class="atn">data-placeholder</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Choose...</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Microsoft Supports"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Word"</span><span class="tag">&gt;</span><span class="pln">Word</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Powerpoint"</span><span class="tag">&gt;</span><span class="pln">Powerpoint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Excel"</span><span class="tag">&gt;</span><span class="pln">Excel</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Access"</span><span class="tag">&gt;</span><span class="pln">Access</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Graphic Suite"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"CorelDraw"</span><span class="tag">&gt;</span><span class="pln">CorelDraw</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Adobe Photoshop"</span><span class="pln"> </span><span class="atn">disabled</span><span class="pun">=</span><span class="atv">"disabled"</span><span class="tag">&gt;</span><span class="pln">Adobe Photoshop</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Photoshine"</span><span class="tag">&gt;</span><span class="pln">Photoshine</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Paint"</span><span class="tag">&gt;</span><span class="pln">Paint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="tag">&gt;</span><span class="pln">Yes</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"alert"</span><span class="tag">&gt;</span><span class="pln">No</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Cancel</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer content</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-b"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"b"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Swatch B</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-default"</span><span class="tag">&gt;</span><span class="pln">View default swatch</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-a"</span><span class="tag">&gt;</span><span class="pln">View swatch a</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-c"</span><span class="tag">&gt;</span><span class="pln">View swatch c</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-d"</span><span class="tag">&gt;</span><span class="pln">View swatch d</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-e"</span><span class="tag">&gt;</span><span class="pln">View swatch e</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Some sample form elements and buttons:</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"formprocessor.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"post"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="tag">&gt;</span><span class="pln">Select Your Courses:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">data-native-menu</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">multiple</span><span class="pun">=</span><span class="atv">"multiple"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"choose"</span><span class="pln"> </span><span class="atn">data-placeholder</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Choose...</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Microsoft Supports"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Word"</span><span class="tag">&gt;</span><span class="pln">Word</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Powerpoint"</span><span class="tag">&gt;</span><span class="pln">Powerpoint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Excel"</span><span class="tag">&gt;</span><span class="pln">Excel</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Access"</span><span class="tag">&gt;</span><span class="pln">Access</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Graphic Suite"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"CorelDraw"</span><span class="tag">&gt;</span><span class="pln">CorelDraw</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Adobe Photoshop"</span><span class="pln"> </span><span class="atn">disabled</span><span class="pun">=</span><span class="atv">"disabled"</span><span class="tag">&gt;</span><span class="pln">Adobe Photoshop</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Photoshine"</span><span class="tag">&gt;</span><span class="pln">Photoshine</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Paint"</span><span class="tag">&gt;</span><span class="pln">Paint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="tag">&gt;</span><span class="pln">Yes</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"alert"</span><span class="tag">&gt;</span><span class="pln">No</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Cancel</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer content</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-c"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"c"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Swatch C</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-default"</span><span class="tag">&gt;</span><span class="pln">View default swatch</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-a"</span><span class="tag">&gt;</span><span class="pln">View swatch a</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-b"</span><span class="tag">&gt;</span><span class="pln">View swatch b</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-d"</span><span class="tag">&gt;</span><span class="pln">View swatch d</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-e"</span><span class="tag">&gt;</span><span class="pln">View swatch e</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Some sample form elements and buttons:</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"formprocessor.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"post"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="tag">&gt;</span><span class="pln">Select Your Courses:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">data-native-menu</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">multiple</span><span class="pun">=</span><span class="atv">"multiple"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"choose"</span><span class="pln"> </span><span class="atn">data-placeholder</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Choose...</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Microsoft Supports"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Word"</span><span class="tag">&gt;</span><span class="pln">Word</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Powerpoint"</span><span class="tag">&gt;</span><span class="pln">Powerpoint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Excel"</span><span class="tag">&gt;</span><span class="pln">Excel</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Access"</span><span class="tag">&gt;</span><span class="pln">Access</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Graphic Suite"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"CorelDraw"</span><span class="tag">&gt;</span><span class="pln">CorelDraw</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Adobe Photoshop"</span><span class="pln"> </span><span class="atn">disabled</span><span class="pun">=</span><span class="atv">"disabled"</span><span class="tag">&gt;</span><span class="pln">Adobe Photoshop</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Photoshine"</span><span class="tag">&gt;</span><span class="pln">Photoshine</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Paint"</span><span class="tag">&gt;</span><span class="pln">Paint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="tag">&gt;</span><span class="pln">Yes</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"alert"</span><span class="tag">&gt;</span><span class="pln">No</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Cancel</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer content</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-d"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"d"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Swatch D</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-default"</span><span class="tag">&gt;</span><span class="pln">View default swatch</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-a"</span><span class="tag">&gt;</span><span class="pln">View swatch a</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-b"</span><span class="tag">&gt;</span><span class="pln">View swatch b</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-c"</span><span class="tag">&gt;</span><span class="pln">View swatch c</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-e"</span><span class="tag">&gt;</span><span class="pln">View swatch e</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Some sample form elements and buttons:</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"formprocessor.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"post"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="tag">&gt;</span><span class="pln">Select Your Courses:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">data-native-menu</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">multiple</span><span class="pun">=</span><span class="atv">"multiple"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"choose"</span><span class="pln"> </span><span class="atn">data-placeholder</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Choose...</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Microsoft Supports"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Word"</span><span class="tag">&gt;</span><span class="pln">Word</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Powerpoint"</span><span class="tag">&gt;</span><span class="pln">Powerpoint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Excel"</span><span class="tag">&gt;</span><span class="pln">Excel</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Access"</span><span class="tag">&gt;</span><span class="pln">Access</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Graphic Suite"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"CorelDraw"</span><span class="tag">&gt;</span><span class="pln">CorelDraw</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Adobe Photoshop"</span><span class="pln"> </span><span class="atn">disabled</span><span class="pun">=</span><span class="atv">"disabled"</span><span class="tag">&gt;</span><span class="pln">Adobe Photoshop</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Photoshine"</span><span class="tag">&gt;</span><span class="pln">Photoshine</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Paint"</span><span class="tag">&gt;</span><span class="pln">Paint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="tag">&gt;</span><span class="pln">Yes</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"alert"</span><span class="tag">&gt;</span><span class="pln">No</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Cancel</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer content</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-e"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Swatch E</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-default"</span><span class="tag">&gt;</span><span class="pln">View default swatch</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-a"</span><span class="tag">&gt;</span><span class="pln">View swatch a</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-b"</span><span class="tag">&gt;</span><span class="pln">View swatch b</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-c"</span><span class="tag">&gt;</span><span class="pln">View swatch c</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-d"</span><span class="tag">&gt;</span><span class="pln">View swatch d</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Some sample form elements and buttons:</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"formprocessor.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"post"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="tag">&gt;</span><span class="pln">Select Your Courses:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">data-native-menu</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">multiple</span><span class="pun">=</span><span class="atv">"multiple"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"choose"</span><span class="pln"> </span><span class="atn">data-placeholder</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Choose...</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Microsoft Supports"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Word"</span><span class="tag">&gt;</span><span class="pln">Word</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Powerpoint"</span><span class="tag">&gt;</span><span class="pln">Powerpoint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Excel"</span><span class="tag">&gt;</span><span class="pln">Excel</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Access"</span><span class="tag">&gt;</span><span class="pln">Access</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Graphic Suite"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"CorelDraw"</span><span class="tag">&gt;</span><span class="pln">CorelDraw</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Adobe Photoshop"</span><span class="pln"> </span><span class="atn">disabled</span><span class="pun">=</span><span class="atv">"disabled"</span><span class="tag">&gt;</span><span class="pln">Adobe Photoshop</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Photoshine"</span><span class="tag">&gt;</span><span class="pln">Photoshine</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Paint"</span><span class="tag">&gt;</span><span class="pln">Paint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="tag">&gt;</span><span class="pln">Yes</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"alert"</span><span class="tag">&gt;</span><span class="pln">No</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Cancel</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer content</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<figure style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30771" href="https://academy.hsoub.com/uploads/monthly_2019_07/img6.png.bb04ad23ae582dacf4e350d77deeb065.png" rel=""><img alt="img6.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30771" data-unique="wg1i6d5ow" src="https://academy.hsoub.com/uploads/monthly_2019_07/img6.thumb.png.8c7a7e32cfc95e71111037de397afec1.png"></a>

	<figcaption>
		النموذج الافتراضية
	</figcaption></figure><figure style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30772" href="https://academy.hsoub.com/uploads/monthly_2019_07/img7.png.d76cbfbd52ff1addbf1f168e18b84081.png" rel=""><img alt="img7.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30772" data-unique="2adqnk39z" src="https://academy.hsoub.com/uploads/monthly_2019_07/img7.thumb.png.a167e899a84a71e4a00306d3143efce3.png"></a>

	<figcaption>
		النموذج A
	</figcaption></figure><figure style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30773" href="https://academy.hsoub.com/uploads/monthly_2019_07/img8.png.7d8a1313b1c2fc66e1985c044ee1e7a6.png" rel=""><img alt="img8.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30773" data-unique="718fnfrdt" src="https://academy.hsoub.com/uploads/monthly_2019_07/img8.thumb.png.bca73537922560d2ba454ec3ed41bbb8.png"></a>

	<figcaption>
		القطعة B
	</figcaption></figure><figure style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30774" href="https://academy.hsoub.com/uploads/monthly_2019_07/img9.png.8d04b462f810652ec87ea5a7e2f45fdd.png" rel=""><img alt="img9.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30774" data-unique="brvxy9sj8" src="https://academy.hsoub.com/uploads/monthly_2019_07/img9.thumb.png.8feaa1f9aabcafd303666ca2512d3227.png"></a>

	<figcaption>
		النموذج C
	</figcaption></figure><figure style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30775" href="https://academy.hsoub.com/uploads/monthly_2019_07/img10.png.43b65513a8523d6403413b1ab5e8a27e.png" rel=""><img alt="img10.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30775" data-unique="n4ahdphbo" src="https://academy.hsoub.com/uploads/monthly_2019_07/img10.thumb.png.f54077b622c805ded31bfbf1456fc156.png"></a>

	<figcaption>
		النموذج D
	</figcaption></figure><figure style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30776" href="https://academy.hsoub.com/uploads/monthly_2019_07/img11.png.62ed0de87746b3f7d6cf51bf8e2a7aa9.png" rel=""><img alt="img11.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30776" data-unique="jbnzwu9l9" src="https://academy.hsoub.com/uploads/monthly_2019_07/img11.thumb.png.d7c5418f9473417b664b6b35d041f5ae.png"></a>

	<figcaption>
		النموذج E
	</figcaption></figure><p>
	وإليك بعض الصور لعنصر إدخال من نوع خيار متعدد بنماذج متعددة:
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30777" href="https://academy.hsoub.com/uploads/monthly_2019_07/img12.png.c8f202d950f744a05d6417aad6cb5518.png" rel=""><img alt="img12.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30777" data-unique="xjghq9hx4" src="https://academy.hsoub.com/uploads/monthly_2019_07/img12.thumb.png.8c14df46b007986e0f893dbfeba0963f.png"></a><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30778" href="https://academy.hsoub.com/uploads/monthly_2019_07/img13.png.b292d1d4892d30a1d70ccec0a53558ee.png" rel=""><img alt="img13.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30778" data-unique="2rkgwaxqk" src="https://academy.hsoub.com/uploads/monthly_2019_07/img13.thumb.png.2c282b01d7ce8958af6934041a456c9f.png"></a><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30779" href="https://academy.hsoub.com/uploads/monthly_2019_07/img14.png.969e54f1b51f6c8a4c8f488286cf82cf.png" rel=""><img alt="img14.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30779" data-unique="u8axvg0fs" src="https://academy.hsoub.com/uploads/monthly_2019_07/img14.thumb.png.383cb3919bba30374d22cb11f1c2cd4b.png"></a>
</p>

<h2 id="-">
	خلط عدة نماذج مع بعضها بعضًا
</h2>

<p>
	يمكنك خلط ومطابقة النماذج داخل الصفحة، مما يتيح لك السيطرة الدقيقة على مظهر التطبيق.
</p>

<h3 id="-43-jquery-mobile">
	المثال 43: خلط النماذج الافتراضية المشتركة في jQuery mobile
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_22" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Cutomized icons in jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-mixed"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"b"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Mixing Swatches</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"formprocessor.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"post"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="tag">&gt;</span><span class="pln">Select Your Courses:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">data-native-menu</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">multiple</span><span class="pun">=</span><span class="atv">"multiple"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"choose"</span><span class="pln"> </span><span class="atn">data-placeholder</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Choose...</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Microsoft Supports"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Word"</span><span class="tag">&gt;</span><span class="pln">Word</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Powerpoint"</span><span class="tag">&gt;</span><span class="pln">Powerpoint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Excel"</span><span class="tag">&gt;</span><span class="pln">Excel</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Access"</span><span class="tag">&gt;</span><span class="pln">Access</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Graphic Suite"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"CorelDraw"</span><span class="tag">&gt;</span><span class="pln">CorelDraw</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Adobe Photoshop"</span><span class="pln"> </span><span class="atn">disabled</span><span class="pun">=</span><span class="atv">"disabled"</span><span class="tag">&gt;</span><span class="pln">Adobe Photoshop</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Photoshine"</span><span class="tag">&gt;</span><span class="pln">Photoshine</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Paint"</span><span class="tag">&gt;</span><span class="pln">Paint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="tag">&gt;</span><span class="pln">Yes</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"alert"</span><span class="tag">&gt;</span><span class="pln">No</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Cancel</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"d"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Okeagu Godwin</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"d"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30780" href="https://academy.hsoub.com/uploads/monthly_2019_07/img15.png.96d5c4d3d5d0b80d738978a3647d50ad.png" rel=""><img alt="img15.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30780" data-unique="r0lljlyjm" src="https://academy.hsoub.com/uploads/monthly_2019_07/img15.thumb.png.f74672c92e8f4e64a5d69fdacca0497a.png"></a>
</p>

<h2 id="-">
	تحديد النموذج المراد تطبيقه على العناصر عن طريق الأصناف
</h2>

<p>
	بدءًا من الجزء العلوي، يمكنك أن ترى أن كل من الصفحة وأقسام الرأس لا تستخدم الخاصية <code>datatheme</code> لذلك سيُستخدم القالب الافتراضي على هذه الأقسام.
</p>

<h3 id="-44-jquery-mobile-">
	المثال 44: خلط النماذج الافتراضية المشتركة فيjQuery mobile بتحديد النموذج المطبَّق على على العناصر حسب قيمة خاصية الصنف
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_24" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Swatches</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.js"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Class Swatch</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-body-a"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">The body or content area is using class="ui-body-a"</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-up-e"</span><span class="tag">&gt;</span><span class="pln">class="ui-btn-up-e"</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="pln"> </span><span class="atn">data-inset</span><span class="pun">=</span><span class="atv">"true"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar-d"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">This list</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">is using</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">class="ui-bar-d"</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30781" href="https://academy.hsoub.com/uploads/monthly_2019_07/img16.png.623b31aaa8584556df5be24a677abac6.png" rel=""><img alt="img16.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30781" data-unique="joaosxxg5" src="https://academy.hsoub.com/uploads/monthly_2019_07/img16.thumb.png.29daf6e0197b139cb005b429f8d42fd4.png"></a>
</p>

<p>
	على الرغم من استخدام أصناف قليلة، إلا أنه يمكنك تخصيص كل جانب من أنماط jQuery Mobile عن طريق استبدال الأصناف كما يلي:
</p>

<ul>
<li>
		ui-bar-(a-z)
	</li>
	<li>
		ui-body-(a-z)
	</li>
	<li>
		ui-btn-up-(a-z)
	</li>
	<li>
		ui-btn-down-(a-z)
	</li>
	<li>
		ui-btn-active
	</li>
	<li>
		ui-corner-all -ui-br
	</li>
	<li>
		ui-icon
	</li>
	<li>
		ui-icon-alt
	</li>
	<li>
		ui-overlay
	</li>
	<li>
		ui-shadow
	</li>
</ul>
<p>
	للإطلاع على كافة الأصناف التي يمكنك استخدامها، افتح ملف CSS غير المضغوط أو ملف CSS المُصغَّر الذي هو جزء من إطار jQuery Mobile وستجد تعليقات في هذا الملف وهو مفيد حقًا عندما تريد إنشاء أنماطك المخصصة. دعنا نلقي نظرة حول كيفية إنشاء أنماطنا الخاصة وتضمينها.
</p>

<h3 id="-">
	التعديل على نموذج ألوان موجود
</h3>

<p>
	تُعرّف نموذج ألوان القالب في jQuery Mobile عن طريق CSS، لذلك فهي سهلة التعديل لتناسب الاحتياجات الفردية الخاصة بك. تُقسم النماذج إلى أقسام في ورقة أنماط jQuery Mobile وهي واضحة.
</p>

<p>
	أفضل طريقة لتعديل القالب هي عن طريق إنشاء ورقة أنماط للأنماط المطلوبة ومن ثم تحميلها بعد تحميل ورقة أنماط jQuery Mobile، وهذا مفيد بشكل خاص إذا كنت تستخدم CDN لخدمة ورقة أنماط jQuery Mobile.
</p>

<h3 id="-">
	تطبيق قالب مخصص
</h3>

<p>
	الآن، أنت قادر على تخصيص أنماط jQuery Mobile باستخدام أصناف CSS، وحان الوقت الآن لتعديل الأنماط الافتراضية وتضمين الأنماط الخاصة بك. وللقيام بذلك ستحتاج إلى تعديل ملف CSS الموجود، أو إنشاء واحد خاص بك وإضافته إلى الصفحة.
</p>

<p>
	لأنني أعتقد في استخدام أساليب غير تدميرية عند تعلم شيء جديد، أنشأت ورقة أنماط CSS جديدة وأضفتها إلى صفحتنا.
</p>

<p>
	على سبيل المثال، لنفترض أننا نريد تغيير اللون الأصفر من النموذج E إلى الأخضر، يمكننا فعل ذلك بسهولة عن طريق تغيير بعض قواعد CSS.
</p>

<p>
	لاحظ أنني قمت بتضمين ورقة أنماط النموذج E بعد ورقة أنماط jQuery Mobile مما يضمن أن أنماطي ستحل محل الأنماط الافتراضية.
</p>

<h4 id="-45-">
	مثال 45: تطبيق قالب مخصص
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_26" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Cutomized icons in jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style&gt;</span><span class="pln">
    </span><span class="com">/*
Change:
#fceda7 to #a7fcaf
#fadb4e to #5afa4e
#f7c942 to #5cf742
#33ff33 to #9efaa2
#fe3 to #33ff33
#fcf0b5 to #b5fcb5
#e79952 to #52e760
#fbe26f to #76fb6f
*/</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">e </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#5cf742;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#5afa4e;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">top</span><span class="pun">,</span><span class="pln"> </span><span class="com">#a7fcaf, #5afa4e);</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> color</span><span class="pun">-</span><span class="pln">stop</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="com">#a7fcaf), color-stop(1, #5afa4e));</span><span class="pln">
      </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">filter</span><span class="pun">:</span><span class="pln"> </span><span class="str">"progid:DXImageTransform.Microsoft.gradient(startColorStr='#a7fcaf',EndColorStr='#5afa4e')"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">e </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#5cf742;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#9efaa2;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">top</span><span class="pun">,</span><span class="pln"> </span><span class="com">#fff, #9efaa2);</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> color</span><span class="pun">-</span><span class="pln">stop</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="com">#fff), color-stop(1, #9efaa2));</span><span class="pln">
      </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">filter</span><span class="pun">:</span><span class="pln"> </span><span class="str">"progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff',EndColorStr='#9efaa2')"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">up</span><span class="pun">-</span><span class="pln">e </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#5cf742;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#5afa4e;</span><span class="pln">
      text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#33ff33;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">top</span><span class="pun">,</span><span class="pln"> </span><span class="com">#a7fcaf, #5afa4e);</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> color</span><span class="pun">-</span><span class="pln">stop</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="com">#a7fcaf), color-stop(1, #5afa4e));</span><span class="pln">
      </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">filter</span><span class="pun">:</span><span class="pln"> </span><span class="str">"progid:DXImageTransform.Microsoft.gradient(startColorStr='#a7fcaf',EndColorStr='#5afa4e')"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">hover</span><span class="pun">-</span><span class="pln">e </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#52e760;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#76fb6f;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">top</span><span class="pun">,</span><span class="pln"> </span><span class="com">#b5fcb5, #76fb6f);</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> color</span><span class="pun">-</span><span class="pln">stop</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="com">#b5fcb5), color-stop(1, #76fb6f));</span><span class="pln">
      </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">filter</span><span class="pun">:</span><span class="pln"> </span><span class="str">"progid:DXImageTransform.Microsoft.gradient(startColorStr='#b5fcb5',EndColorStr='#76fb6f')"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">down</span><span class="pun">-</span><span class="pln">e </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#5cf742;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#a7fcaf;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">top</span><span class="pun">,</span><span class="pln"> </span><span class="com">#5afa4e, #a7fcaf);</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> color</span><span class="pun">-</span><span class="pln">stop</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="com">#5afa4e), color-stop(1, #a7fcaf));</span><span class="pln">
      </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">filter</span><span class="pun">:</span><span class="pln"> </span><span class="str">"progid:DXImageTransform.Microsoft.gradient(startColorStr='#5afa4e',EndColorStr='#a7fcaf')"</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swatch-e"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Swatch E</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-default"</span><span class="tag">&gt;</span><span class="pln">View default swatch</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-a"</span><span class="tag">&gt;</span><span class="pln">View swatch a</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-b"</span><span class="tag">&gt;</span><span class="pln">View swatch b</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-c"</span><span class="tag">&gt;</span><span class="pln">View swatch c</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#swatch-d"</span><span class="tag">&gt;</span><span class="pln">View swatch d</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Some sample form elements and buttons:</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;form</span><span class="pln"> </span><span class="atn">action</span><span class="pun">=</span><span class="atv">"formprocessor.php"</span><span class="pln"> </span><span class="atn">method</span><span class="pun">=</span><span class="atv">"post"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"fieldcontain"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;label</span><span class="pln"> </span><span class="atn">for</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="tag">&gt;</span><span class="pln">Select Your Courses:</span><span class="tag">&lt;/label&gt;</span><span class="pln">
          </span><span class="tag">&lt;select</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"select-courses"</span><span class="pln"> </span><span class="atn">data-native-menu</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">multiple</span><span class="pun">=</span><span class="atv">"multiple"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"choose"</span><span class="pln"> </span><span class="atn">data-placeholder</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Choose...</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Microsoft Supports"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Word"</span><span class="tag">&gt;</span><span class="pln">Word</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Powerpoint"</span><span class="tag">&gt;</span><span class="pln">Powerpoint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Excel"</span><span class="tag">&gt;</span><span class="pln">Excel</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Access"</span><span class="tag">&gt;</span><span class="pln">Access</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
            </span><span class="tag">&lt;optgroup</span><span class="pln"> </span><span class="atn">label</span><span class="pun">=</span><span class="atv">"Graphic Suite"</span><span class="tag">&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"CorelDraw"</span><span class="tag">&gt;</span><span class="pln">CorelDraw</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Adobe Photoshop"</span><span class="pln"> </span><span class="atn">disabled</span><span class="pun">=</span><span class="atv">"disabled"</span><span class="tag">&gt;</span><span class="pln">Adobe Photoshop</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Photoshine"</span><span class="tag">&gt;</span><span class="pln">Photoshine</span><span class="tag">&lt;/option&gt;</span><span class="pln">
              </span><span class="tag">&lt;option</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Paint"</span><span class="tag">&gt;</span><span class="pln">Paint</span><span class="tag">&lt;/option&gt;</span><span class="pln">
            </span><span class="tag">&lt;/optgroup&gt;</span><span class="pln">
          </span><span class="tag">&lt;/select&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/form&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"star"</span><span class="tag">&gt;</span><span class="pln">Yes</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"alert"</span><span class="tag">&gt;</span><span class="pln">No</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-icon</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">Cancel</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="pln"> </span><span class="atn">data-id</span><span class="pun">=</span><span class="atv">"rps"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-btn-active ui-statepersist"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30782" href="https://academy.hsoub.com/uploads/monthly_2019_07/img17.png.ab8e679463a2f7c578972a32b0202e01.png" rel=""><img alt="img17.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30782" data-unique="2vtspro0g" src="https://academy.hsoub.com/uploads/monthly_2019_07/img17.thumb.png.82411c897c68f017d69686c6390f9971.png"></a><a class="ipsAttachLink ipsAttachLink_image" data-fileid="30783" href="https://academy.hsoub.com/uploads/monthly_2019_07/img18.png.e52a42191ff28ad36e355d5c174e7a7d.png" rel=""><img alt="img18.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30783" data-unique="2jtnbtoff" src="https://academy.hsoub.com/uploads/monthly_2019_07/img18.thumb.png.1eceb7e4bd80d00c8f1884f2993f04c2.png"></a>
</p>

<h3 id="-">
	إنشاء نموذج مخصص
</h3>

<p>
	سيكون لديك خيارات مختلفة عندما يتعلق الأمر بإنشاء نموذج ألوان. يمكنك إما تغيير النموذج الموجود (وهذا ما فعلناه مسبقًا) أو بناء واحد جديد من الصفر، أو نسخ واحد والتعديل عليه وتغيير الإعدادات حسب تفضيلك. وهنالك خيار آخر وهو "إنشاء قالبك الخاص باستخدام ThemeRoller".
</p>

<p>
	لإنشاء نموذج خاصة بك، سننسخ نموذجًا من النماذج الموجودة ومن ثم نُعدِّل على الأنماط كما نريد. ستجد في الأسفل نموذجًا كاملًا نسخناه وغيّرناه إلى نموذج مخصص.
</p>

<h4 id="-46-a-f">
	مثال 46: نموذج كامل – نسخ a وتعديله ليتحول إلى النموذج f
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_28" style="">
<span class="tag">&lt;style&gt;</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
    border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#4a4a4a;</span><span class="pln">
    background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#333333;</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#ffffff;</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
    text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#000000;</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#014D88), to( #111));</span><span class="pln">
    </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
    </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
    </span><span class="com">/* FF3.6 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
    </span><span class="com">/* IE10 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
    </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f input</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="kwd">select</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f textarea</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f button </span><span class="pun">{</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">family</span><span class="pun">:</span><span class="pln"> </span><span class="typ">Helvetica</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Arial</span><span class="pun">,</span><span class="pln"> sans</span><span class="pun">-</span><span class="pln">serif</span><span class="pun">;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#F7E065;</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">hover </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">active </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">visited </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">dialog</span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">overlay</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
    border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#3f3f3f;</span><span class="pln">
    background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#444444;</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
    text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> normal</span><span class="pun">;</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#0C8DD2), to( #014D88));</span><span class="pln">
    </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88);</span><span class="pln">
    </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88);</span><span class="pln">
    </span><span class="com">/* FF3.6 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88/);</span><span class="pln">
    </span><span class="com">/* IE10 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88);</span><span class="pln">
    </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88);</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f input</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="kwd">select</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f textarea</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f button </span><span class="pun">{</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">family</span><span class="pun">:</span><span class="pln"> </span><span class="typ">Helvetica</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Arial</span><span class="pun">,</span><span class="pln"> sans</span><span class="pun">-</span><span class="pln">serif</span><span class="pun">;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">hover </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">active </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">visited </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">up</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
    border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#222;</span><span class="pln">
    background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#065BDB;</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
    text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#1065E4), to( #065BDB));</span><span class="pln">
    </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
    </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
    </span><span class="com">/* FF3.6 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
    </span><span class="com">/* IE10 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
    </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">up</span><span class="pun">-</span><span class="pln">f a</span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff/;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">hover</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
    border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="lit">000</span><span class="pun">;</span><span class="pln">
    background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#444444;</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
    text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#1A6FEF), to( #1065E4));</span><span class="pln">
    </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
    </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
    </span><span class="com">/* FF3.6 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
    </span><span class="com">/* IE10 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
    </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">hover</span><span class="pun">-</span><span class="pln">f a</span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">down</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
    border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#014D88;</span><span class="pln">
    background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#012E50;</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
    text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#013B66), to( #0261A9));</span><span class="pln">
    </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A9/);</span><span class="pln">
    </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A9);</span><span class="pln">
    </span><span class="com">/* FF3.6 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A9);</span><span class="pln">
    </span><span class="com">/* IE10 */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A);</span><span class="pln">
    </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
    background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A9);</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">down</span><span class="pun">-</span><span class="pln">f a</span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
    color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">up</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">hover</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">down</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
    font</span><span class="pun">-</span><span class="pln">family</span><span class="pun">:</span><span class="pln"> </span><span class="typ">Helvetica</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Arial</span><span class="pun">,</span><span class="pln"> sans</span><span class="pun">-</span><span class="pln">serif</span><span class="pun">;</span><span class="pln">
    text</span><span class="pun">-</span><span class="pln">decoration</span><span class="pun">:</span><span class="pln"> none</span><span class="pun">;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
</span><span class="tag">&lt;/style&gt;</span></pre>

<p>
	نسخنا وعدلنا على النموذج a وأنشأنا منه النموذج f. أسرع طريقة لبدء التعديلات هو عمل بحث واستبدال (search-and-replace) على كامل الملف لـ ‎-a واستبدالها بخط فاصل (-) مع حرف لاسم النموذج. عند إجراء بحث واستبدال، تأكد من عدم استبدال ‎-o أو ‎-m أو ‎-w أو ‎-g أو ‎-i لأنه إما ستخرّب النمط أو ستلغي دعمه للمتصفحات الاخرى.
</p>

<p>
	القالب f هو شيفرة HTML معاينة في متصفح هاتف.
</p>

<h4 id="-47-f-html-">
	المثال 47: قالب f المعدل في إعدادات شيفرة HTML القياسية
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_30" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Cutomized icons in jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style&gt;</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#4a4a4a;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#333333;</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#ffffff;</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
      text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#000000;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#014D88), to( #111));</span><span class="pln">
      </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
      </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
      </span><span class="com">/* FF3.6 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
      </span><span class="com">/* IE10 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
      </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">014D88</span><span class="pun">,</span><span class="pln"> </span><span class="com">#111);</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f input</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="kwd">select</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f textarea</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f button </span><span class="pun">{</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">family</span><span class="pun">:</span><span class="pln"> </span><span class="typ">Helvetica</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Arial</span><span class="pun">,</span><span class="pln"> sans</span><span class="pun">-</span><span class="pln">serif</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#F7E065;</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">hover </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">active </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">bar</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">visited </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">dialog</span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">overlay</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#3f3f3f;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#444444;</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
      text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> normal</span><span class="pun">;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#0C8DD2), to( #014D88));</span><span class="pln">
      </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88);</span><span class="pln">
      </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88);</span><span class="pln">
      </span><span class="com">/* FF3.6 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88/);</span><span class="pln">
      </span><span class="com">/* IE10 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88);</span><span class="pln">
      </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">0C8DD2</span><span class="pun">,</span><span class="pln"> </span><span class="com">#014D88);</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f input</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="kwd">select</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f textarea</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f button </span><span class="pun">{</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">family</span><span class="pun">:</span><span class="pln"> </span><span class="typ">Helvetica</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Arial</span><span class="pun">,</span><span class="pln"> sans</span><span class="pun">-</span><span class="pln">serif</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">hover </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">active </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">body</span><span class="pun">-</span><span class="pln">f </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">:</span><span class="pln">visited </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFFF7F;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">up</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#222;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#065BDB;</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
      text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#1065E4), to( #065BDB));</span><span class="pln">
      </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
      </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
      </span><span class="com">/* FF3.6 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
      </span><span class="com">/* IE10 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
      </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1065E4</span><span class="pun">,</span><span class="pln"> </span><span class="com">#065BDB);</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">up</span><span class="pun">-</span><span class="pln">f a</span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff/;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">hover</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="lit">000</span><span class="pun">;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#444444;</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
      text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#1A6FEF), to( #1065E4));</span><span class="pln">
      </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
      </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
      </span><span class="com">/* FF3.6 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
      </span><span class="com">/* IE10 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
      </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">1A6FEF</span><span class="pun">,</span><span class="pln"> </span><span class="com">#1065E4);</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">hover</span><span class="pun">-</span><span class="pln">f a</span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">down</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
      border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> solid </span><span class="com">#014D88;</span><span class="pln">
      background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#012E50;</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln"> bold</span><span class="pun">;</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
      text</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">-</span><span class="lit">1px</span><span class="pln"> </span><span class="lit">1px</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(</span><span class="pln">linear</span><span class="pun">,</span><span class="pln"> left top</span><span class="pun">,</span><span class="pln"> left bottom</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">from</span><span class="pun">(</span><span class="pln"> </span><span class="com">#013B66), to( #0261A9));</span><span class="pln">
      </span><span class="com">/* Saf4+, Chrome */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A9/);</span><span class="pln">
      </span><span class="com">/* Chrome 10+, Saf5.1+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A9);</span><span class="pln">
      </span><span class="com">/* FF3.6 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">ms</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A9);</span><span class="pln">
      </span><span class="com">/* IE10 */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="pln">o</span><span class="pun">-</span><span class="pln">linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A);</span><span class="pln">
      </span><span class="com">/* Opera 11.10+ */</span><span class="pln">
      background</span><span class="pun">-</span><span class="pln">image</span><span class="pun">:</span><span class="pln"> linear</span><span class="pun">-</span><span class="pln">gradient</span><span class="pun">(#</span><span class="lit">013B66</span><span class="pun">,</span><span class="pln"> </span><span class="com">#0261A9);</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">down</span><span class="pun">-</span><span class="pln">f a</span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">link</span><span class="pun">-</span><span class="pln">inherit </span><span class="pun">{</span><span class="pln">
      color</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">up</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">hover</span><span class="pun">-</span><span class="pln">f</span><span class="pun">,</span><span class="pln">
    </span><span class="pun">.</span><span class="pln">ui</span><span class="pun">-</span><span class="pln">btn</span><span class="pun">-</span><span class="pln">down</span><span class="pun">-</span><span class="pln">f </span><span class="pun">{</span><span class="pln">
      font</span><span class="pun">-</span><span class="pln">family</span><span class="pun">:</span><span class="pln"> </span><span class="typ">Helvetica</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Arial</span><span class="pun">,</span><span class="pln"> sans</span><span class="pun">-</span><span class="pln">serif</span><span class="pun">;</span><span class="pln">
      text</span><span class="pun">-</span><span class="pln">decoration</span><span class="pun">:</span><span class="pln"> none</span><span class="pun">;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"f"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"f"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Custom Styles</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"collapsible"</span><span class="pln"> </span><span class="atn">data-collapsed</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">data-content-theme</span><span class="pun">=</span><span class="atv">"f"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;h3&gt;</span><span class="pln">Different Swatch</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
        </span><span class="tag">&lt;p&gt;</span><span class="pln">
          This collapsed content area uses a different style for the collapsed content than the rest of the page.
        </span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"f"</span><span class="tag">&gt;</span><span class="pln"> We just create an "F theme" of blue colour </span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"f"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Script-Tutorials.com</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30784" href="https://academy.hsoub.com/uploads/monthly_2019_07/img19.png.954a3239e0072ece5b4996b416cf95ba.png" rel=""><img alt="img19.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30784" data-unique="85fpu8npd" src="https://academy.hsoub.com/uploads/monthly_2019_07/img19.thumb.png.e12ae611d331010ceb7d5ebcd36da640.png"></a>
</p>

<h2 id="-">
	عناصر قالب الموقع
</h2>

<p>
	لقد تعلمت للتو أنه يمكنك استخدام الأصناف لتغيير جوانب مختلفة من قالب موقعك، لكن توجد خيارات إضافية يمكنك استخدامها عند تغيير قالب للمكونات الفردية. تملك بعض المكونات إعدادات افتراضية يجب عليك معرفتها.
</p>

<h3>
	الأزرار
</h3>

<p>
	تستخدم الأزرار تلقائيًا نماذج الألوان المرتبطة بالحاوية الرئيسية، فإذا وضعت الزر في كتلة حاوية تستخدم النموذج b، فإن الزر المحتوى فيها سيستخدم النموذج b أيضًا.
</p>

<p>
	يمكنك تغيير هذا باستخدام الخاصية <code>data-theme</code> على الزر مباشرةً لتغيير النموذج الذي يستخدمه. يُظهر لك هذا المقتطف في سطر واحد كيفية تغيير قالب الزر باستخدام وفق ما ذكرنا آنقًا:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_32" style="">
<span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;&lt;/a&gt;</span></pre>

<h4 id="-48-jquery-">
	مثال 48: استخدام قالب jQuery في مكونات موقع الزر
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_34" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Themeing Components</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.js"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Themeing button </span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">Theme E in button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30785" href="https://academy.hsoub.com/uploads/monthly_2019_07/img20.png.a936c8fc539b18293b9ec799ed1643b8.png" rel=""><img alt="img20.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30785" data-unique="vhrukzfc5" src="https://academy.hsoub.com/uploads/monthly_2019_07/img20.thumb.png.040855cf0223872e5d3fe3b3f2de3378.png"></a>
</p>

<h3 id="-bars-">
	الأشرطة (bars)
</h3>

<p>
	تتضمن مكونات الأشرطة أقسام رأس وذيل الصفحة، إذ تستخدم النموذج الافتراضي لكن يمكن تغييره لاستخدام أي نموذج آخر تفضله عن طريق إضافة الخاصية <code>data-theme</code>.
</p>

<p>
	المقتطف المتكون من سطر واحد التالي يظهر لك استخدام عنصر <code>div</code> لإنشاء قسم الرأس الذي يستخدم الخاصية <code>data-theme</code> لتغيير النموذج المطبق عليه.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_36" style="">
<span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Using the e swatch</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span></pre>

<h4 id="-49-jquery-">
	المثال 49: استخدام قالب jQuery في مكونات أشرطة الموقع
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_38" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Themeing Components</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.js"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Using the e swatch</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30786" href="https://academy.hsoub.com/uploads/monthly_2019_07/img21.png.0891c86cd6dafccd64df2df2ccf069ab.png" rel=""><img alt="img21.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30786" data-unique="31swibsst" src="https://academy.hsoub.com/uploads/monthly_2019_07/img21.thumb.png.5282106c4f3ef915c0d782873a4ad408.png"></a>
</p>

<h3 id="-">
	كتل المحتوى
</h3>

<p>
	يمكن أن يكون تغيير قالب محتوى الكتلة صعب قليلا، فـ jQuery يفترض أنك لا تطبق الخاصية <code>data-theme</code> مباشرةً على قيم المحتوى لصفحتك، وذلك لأن قسم المحتوى قد لا يأخذ كامل المساحة المرئية في الصفحة. عند حدوث هذا، ستُقطع الخلفية فجأة وستبدو الصفحة مكسورة.
</p>

<p>
	بدلًا من ذلك، يجب عليك تطبيق النموذج الذي تريد استخدامه عن طريق استخدام الخاصية <code>data</code> على العنصر الذي يحتوي الخاصية <code>data-role="page"‎</code>.
</p>

<p>
	يمكن لكتل المحتوى أن تتقبل خاصية قالب أخرى وهي <code>data-content-theme</code>، التي ستطبق على المحتوى الذي بداخل الحاويات القابلة للطي، ويمكن أن تطبق أيضا على العنصر الذي يحتوي الخاصية <code>data-role="page"‎</code> وستتوارثه عناصره الفرعية.
</p>

<h4 id="-50-jquery-">
	المثال 50: استخدام قالب jQuery في مكون كتل محتوى الموقع
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2073_40" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Themeing Components</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.js"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"b"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Custom Styles</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"collapsible"</span><span class="pln"> </span><span class="atn">data-collapsed</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">data-content-theme</span><span class="pun">=</span><span class="atv">"e"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;h3&gt;</span><span class="pln">Different Swatch</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
        </span><span class="tag">&lt;p&gt;</span><span class="pln">
          This collapsed content area uses a different style for the collapsed content than the rest of the page.
        </span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30787" href="https://academy.hsoub.com/uploads/monthly_2019_07/img22.png.e166d00c75281f8c4290d9f2c3ce265b.png" rel=""><img alt="img22.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30787" data-unique="9gxfloqeo" src="https://academy.hsoub.com/uploads/monthly_2019_07/img22.thumb.png.a74a03783ec716efcd971002b23fda73.png"></a>
</p>

<p>
	عند استخدام الخاصيتين <code>data-theme</code> و <code>data-content-theme</code> على عنصر، يطغى نموذج الألوان المستخدم في الخاصية <code>data-content-theme</code> عادةً على النموذج المستخدم في الخاصية <code>datatheme</code> وهذا يفسر لماذا ترى فقط النموذج الموجود في <code>data-content-theme</code> عند محاولتك لاستخدام الخاصيتين في حاوية الصفحة.
</p>

<p>
	ترجمة -وبتصرّف- للمقال <a href="https://www.script-tutorials.com/jquery-mobile-lesson-5/" rel="external nofollow">jQuery Mobile Lesson 5</a> لصاحبه Andrew
</p>

<h2>
	اقرأ أيضًا
</h2>

<ul>
<li>
		الدرس التالي: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B3%D8%A7%D8%AF%D8%B3-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%A7%D9%84%D9%82%D9%88%D8%A7%D8%A6%D9%85-%D9%88%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D9%87%D8%A7-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D9%86%D9%85%D8%A7%D8%B0%D8%AC-%D8%A7%D9%84%D8%A8%D8%AD%D8%AB-%D9%88%D8%AA%D8%B3%D8%AC%D9%8A%D9%84-%D8%A7%D9%84%D8%AF%D8%AE%D9%88%D9%84-r718/" rel="">إنشاء القوائم وتنسيقها وإنشاء نماذج البحث وتسجيل الدخول</a>
	</li>
	<li>
		الدرس السابق: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D8%B1%D8%A8%D8%B7-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AE%D8%A7%D8%B1%D8%AC%D9%8A%D8%A9-%D9%88%D8%AA%D9%86%D8%B8%D9%8A%D9%85-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D8%A8%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A9-%D9%88%D8%A8%D9%86%D8%A7%D8%A1-%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%B7%D9%8A-r703/" rel=""> ربط صفحات خارجية وتنظيم المحتوى بنظام الشبكة وبناء محتوى قابل للطي</a>
	</li>
</ul>
]]></description><guid isPermaLink="false">717</guid><pubDate>Tue, 23 Jul 2019 10:45:35 +0000</pubDate></item><item><title>&#x627;&#x644;&#x62F;&#x631;&#x633; &#x627;&#x644;&#x631;&#x627;&#x628;&#x639;: &#x631;&#x628;&#x637; &#x635;&#x641;&#x62D;&#x627;&#x62A; &#x62E;&#x627;&#x631;&#x62C;&#x64A;&#x629; &#x648;&#x62A;&#x646;&#x638;&#x64A;&#x645; &#x627;&#x644;&#x645;&#x62D;&#x62A;&#x648;&#x649; &#x628;&#x646;&#x638;&#x627;&#x645; &#x627;&#x644;&#x634;&#x628;&#x643;&#x629; &#x648;&#x628;&#x646;&#x627;&#x621; &#x645;&#x62D;&#x62A;&#x648;&#x649; &#x642;&#x627;&#x628;&#x644; &#x644;&#x644;&#x637;&#x64A;</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D8%B1%D8%A8%D8%B7-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AE%D8%A7%D8%B1%D8%AC%D9%8A%D8%A9-%D9%88%D8%AA%D9%86%D8%B8%D9%8A%D9%85-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D8%A8%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A9-%D9%88%D8%A8%D9%86%D8%A7%D8%A1-%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%B7%D9%8A-r703/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2019_06/5d10b732783fc_.jpg.8d1160208e6a8d1a93fd7b59ed0f7ad5.jpg" /></p>

<p>
	في درسنا الرابع من هذه السلسلة، سنتابع الحديث حول الخاصية <code>data-‎</code>، وربط الصفحات الخارجية، واستخدام نظام الشبكة (grid system)، وبناء محتوى قابل للطي. بالإضافة إلى ذلك، ستتعلم كيف تنشئ تذييل ورأس وشريط تنقل ...إلخ. وكل ذلك مدعوم بأجزاء من شيفرات برمجية عملية.
</p>

<p>
	هذا الدرس جزء من <a href="https://academy.hsoub.com/tags/jquery%20mobile/" rel="">سلسلة دروس تشرح jQuery Mobile</a>:
</p>

<ul>
<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%A3%D9%88%D9%84-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9%D8%8C-%D8%A8%D9%86%D8%A7%D8%A1-%D9%88%D8%AA%D9%82%D8%AF%D9%8A%D9%85-%D9%85%D8%AD%D8%AA%D9%88%D9%89-r629/" rel="">الدرس الأول: البداية، بناء وتقديم محتوى</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%86%D9%8A-%D8%A7%D9%84%D8%AA%D8%B6%D9%85%D9%8A%D9%86%D8%8C-%D8%AA%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9%D8%8C-%D8%A7%D9%84%D8%AA%D9%86%D9%82%D9%84-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-%D8%A7%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-r633/" rel="">الدرس الثاني: التضمين، تهيئة الصفحة، التنقل بين الصفحات وأحداث التحميل</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%84%D8%AB-%D8%A7%D8%AA%D8%AC%D8%A7%D9%87-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB%D9%87%D8%A7-r702/" rel="">الدرس الثالث: اتجاه الصفحة وأحداثها</a>
	</li>
	<li>
		الدرس الرابع: ربط صفحات خارجية وتنظيم المحتوى بنظام الشبكة وبناء محتوى قابل للطي
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AE%D8%A7%D9%85%D8%B3-%D8%A7%D9%84%D8%A3%D9%8A%D9%82%D9%88%D9%86%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%B2%D8%B1%D8%A7%D8%B1-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D8%A7%D8%AA-%D9%85%D8%AE%D8%B5%D8%B5%D8%A9-r717/" rel="">الدرس الخامس: الأيقونات والأزرار وإنشاء تنسيقات مخصصة</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B3%D8%A7%D8%AF%D8%B3-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%A7%D9%84%D9%82%D9%88%D8%A7%D8%A6%D9%85-%D9%88%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D9%87%D8%A7-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D9%86%D9%85%D8%A7%D8%B0%D8%AC-%D8%A7%D9%84%D8%A8%D8%AD%D8%AB-%D9%88%D8%AA%D8%B3%D8%AC%D9%8A%D9%84-%D8%A7%D9%84%D8%AF%D8%AE%D9%88%D9%84-r718/" rel="">الدرس السادس: إنشاء القوائم وتنسيقها وإنشاء نماذج البحث وتسجيل الدخول</a>
	</li>
</ul>
<h2 id="-">
	الصفحات الخارجية
</h2>

<p>
	يتعامل jQuery Mobile مع الصفحات الخارجية أيضًا. فإذا ربطت صفحة منفصلة بدلًا من مُعرِّف عنصر <code>data-role="page"‎</code> داخل المستند الحالي، سيجري jQuery Mobile إجراء جلب غير متزامن (asynchronous fetch) للصفحة المطلوبة ويدمجها في الصفحة الحالية ليسمح لها بتشغيل دوال إدارة الصفحة.
</p>

<p>
	لإضافة صفحة خارجية إلى الشيفرة البرمجية السابقة، أنشئ ملفًا باسمexpage.html وضمّن الشيفرة الآتية وغيّر الرابط في شيفرة الصفحة الثالثة والذي هو:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_7" style="">
<span class="tag">&lt;p&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go back to First Page</span><span class="tag">&lt;/a&gt;&lt;/p&gt;</span></pre>

<p>
	إلى:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_9" style="">
<span class="tag">&lt;p&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"expage.html"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to external Page</span><span class="tag">&lt;/a&gt;&lt;/p&gt;</span></pre>

<h3 id="-22-">
	مثال 22: ربط صفحة خارجية
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_11" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">charset</span><span class="pun">=</span><span class="atv">"utf-8"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;p&gt;</span><span class="pln">This content will be ignored.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- Begin Page 4 --&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page4"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">External Page!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to First Page</span><span class="tag">&lt;/a&gt;</span><span class="pln">.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- End Page 4--&gt;</span><span class="pln">
  </span><span class="tag">&lt;h3&gt;</span><span class="pln">This content will be ignored as well.</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30363" href="https://academy.hsoub.com/uploads/monthly_2019_06/img1.png.73cbdc51747c2047704231855c653da3.png" rel=""><img alt="img1.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30363" data-unique="hdgzurxns" src="https://academy.hsoub.com/uploads/monthly_2019_06/img1.thumb.png.12223c205fdaeb263602b63da976fd88.png"></a>
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30364" href="https://academy.hsoub.com/uploads/monthly_2019_06/img2.png.0c3d543d8ab987355f132d5e5a6b53e4.png" rel=""><img alt="img2.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30364" data-unique="xdq8mqvsc" src="https://academy.hsoub.com/uploads/monthly_2019_06/img2.thumb.png.7920b2f79b85d6a86d0bda0aeb9dfcb9.png"></a>
</p>

<p>
	عند معاينة هذا السكربت، سترى الصورة الأولى؛ ولكن عند الانتقال من الصفحة السابقة للسكربت السابق، ستظهر لك الصورة الثانية.
</p>

<h2 id="-">
	تجاوز جلب الصفحة غير المتزامن
</h2>

<p>
	ستحتاج في بعض الأحيان إلى تحميل الصفحة بشكل طبيعي بدلًا من جعل jQuery Mobile يجلبه بشكل غير متزامن ويُضمّنه إلى DOM الحالي. يمكنك تجاوز تحميل AJAX بطريقتين: تحديد الخاصية الهدف على الرابط (مثل "‎_blank") أو بتحديد الخاصية rel="external"‎ على الرابط.
</p>

<h2 id="-">
	رصف المحتوى في شبكة
</h2>

<p>
	الشبكة (grid) هي أداة لتنظيم الكائنات، ويستخدم jQuery Mobile النظام الشبكي لمساعدتك في رصف المحتوى؛ هذا النظام مفيد لأنه يساعدك على إنشاء صفحات متجاوبة مع عدة أجهزة وبذلك لست يأخذ هذا النظام على عاتقه تخمين كيفية عرض الصفحة على الأجهزة ذات الأحجام المختلفة بالشكل الذي خططت له.
</p>

<p>
	يسمح لك النظام الشبكي في jQuery Mobile بإنشاء أعمدة متساوية العرض. ولتطبيق نظام الشبكة (grid) على المحتوى، ستحتاج إلى إضافة صنف إلى الحاوية التي تريد استخدام الشبكة (grid) فيها، وصنف ثانوي إلى العناصر داخل الحاوية.
</p>

<p>
	أصناف حاوية الشبكة هي:
</p>

<ul>
<li>
		<code>ui-grid-a</code>: تنشئ شبكة من عمودين.
	</li>
	<li>
		<code>ui-grid-b</code>: تنشئ شبكة من 3 أعمدة.
	</li>
	<li>
		<code>ui-grid-c</code>: تنشئ شبكة من 4 أعمدة.
	</li>
	<li>
		<code>ui-grid-d</code>: تنشئ شبكة من 5 أعمدة.
	</li>
</ul>
<p>
	أصناف المحتوى هي:
</p>

<ul>
<li>
		<code>ui-block-a</code>: تُستخدم على الكتلة الأولى.
	</li>
	<li>
		<code>ui-block-b</code>: تُستخدم على الكتلة الثانية.
	</li>
	<li>
		<code>ui-block-c</code>: تُستخدم على الكتلة الثالثة.
	</li>
	<li>
		<code>ui-block-d</code>: تُستخدم على الكتلة الرابعة.
	</li>
	<li>
		<code>ui-block-e</code>: تُستخدم على الكتلة الخامسة.
	</li>
</ul>
<p>
	عند استخدام شبكة على حاوية ذات عناصر بمحتوى أعرض من دقة الشاشة، سيُنقل المحتوى إلى صف جديد في الشبكة. هذا يساعد بقاء المحتوى منظم وقابل للعرض على مختلف الأجهزة متفاوتة العرض.
</p>

<h3 id="-23-">
	مثال 23: تنظيم المحتوى عن طريق سطر الشبكة
</h3>

<p>
	يشرح المثال كيفية ترصيف الأزرار وصناديق المحتوى على الصفحة باستخدام الشبكة.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_13" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: Using a grid</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Using a grid</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-a"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">80px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">
            This is first in the grid
          </span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">80px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">
            This element is second in a grid
          </span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">80px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">
            By reusing ui-block-a this wraps to a new row.
          </span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">80px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">
            This is the final element in this grid
          </span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-a"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Link 1</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Link 2</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h4&gt;</span><span class="pln">Using a grid to align : jQuery mobile supports</span><span class="tag">&lt;/h4&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30365" href="https://academy.hsoub.com/uploads/monthly_2019_06/img3.png.26bae7b9f365ad261ffd24113ed62f2e.png" rel=""><img alt="img3.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30365" data-unique="mcay40ajj" src="https://academy.hsoub.com/uploads/monthly_2019_06/img3.thumb.png.432c685a9cdf7360f1a65563d7faa1ed.png"></a>
</p>

<p>
	ستعرض الأجهزة الأكبر محتوى منظم في الشبكة، إذ سيتمدد المحتوى للاستفادة من مساحة الشاشة آنذاك.
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30366" href="https://academy.hsoub.com/uploads/monthly_2019_06/img4.png.945bf2a1abcb9be17cc5f659435e4aa9.png" rel=""><img alt="img4.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30366" data-unique="15x8y1q1s" src="https://academy.hsoub.com/uploads/monthly_2019_06/img4.thumb.png.b6f31c27532fb0360dec7030703be3a4.png"></a>
</p>

<h2 id="-">
	التخطيطات الشبكية
</h2>

<p>
	كما هو موضح في المثال السابق أعلاه، تخطيط الشبكة يعتمد على بنية <code>div</code>: أنشئ عنصر <code>div</code> لاحتواء الشبكة، ومن ثم أضف الخلية داخلها المتمثلة بعناصر <code>div</code> أيضًا.
</p>

<p>
	يُتعامل مع الصفوف المتعددة عن طريق إضافة المزيد من خلايا <code>div</code> والتي يجب أن تُصنَّف ليكون لكل عمود الصنف <code>ui-block</code> الخاص به.
</p>

<p>
	يأخذ العنصر <code>div</code> الحاوي صنفًا يبدأ بـ <code>ui-grid</code>: الصنف <code>ui-grid-a</code> لإنشاء شبكة من عمودين، و <code>ui-</code>grid-b لإنشاء شبكة من ثلاثة أعمدة، وهكذا حتى <code>ui-grid-d</code> لشبكة مؤلفة من خمسة أعمدة.
</p>

<p>
	تأخذ الخلية المتمثلة بعناصر <code>div</code> صنفًا يبدأ بـ <code>ui-block</code> بناءً على ترتيبها: الصنف <code>ui-block-a</code> للخلية الأولى، والصنف <code>ui-block-b</code> للخلية الثانية، وهكذا حتى الصنف <code>ui-block-e</code> للخلية الخامسة.
</p>

<h3 id="-24-jquery-mobile">
	المثال 24: تخطيط شبكة في موقع مخصص للهاتف باستخدام jQuery mobile
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_15" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Grid layout with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h4&gt;</span><span class="pln">2 Colums</span><span class="tag">&lt;/h4&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-b"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION A</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION B</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;h4&gt;</span><span class="pln">3 Columns</span><span class="tag">&lt;/h4&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-b"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION A</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION B</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-c"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION C</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;h4&gt;</span><span class="pln">4 Columns</span><span class="tag">&lt;/h4&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-c"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION A</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION B</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-c"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION C</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-d"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION D</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;h4&gt;</span><span class="pln">5 Columns</span><span class="tag">&lt;/h4&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-d"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION A</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION B</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-c"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION C</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-d"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION D</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-e"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION E</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;h4&gt;</span><span class="pln">2 Rows of 3 Columns</span><span class="tag">&lt;/h4&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-d"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION A</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION B</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-c"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION C</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION A</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION B</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-c"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar ui-bar-b"</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">40px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">DIVISION C</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Alignment Grid-layou</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30367" href="https://academy.hsoub.com/uploads/monthly_2019_06/img5.png.da50103c7fad08e73a83edde7b8bd24e.png" rel=""><img alt="img5.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30367" data-unique="ejowbp58w" src="https://academy.hsoub.com/uploads/monthly_2019_06/img5.thumb.png.76c29cc6bd1333db41f68d1690e08011.png"></a>
</p>

<h2 id="-">
	بناء محتوى قابل للطي
</h2>

<p>
	يمكن أن يكون المحتوى القابل للطي مخفيًا أو ظاهرًا مع وجود زر أو إمكانية لمسه لتغيير حالته (طيِّه إن كان مفتوحًا أو فتحه إن كان مطويًّا). ربما قد رأيت هذا النوع من السلوك على مواقع ويب أخرى سابقًا، خصوصًا في أقسام الأسئلة الشائعة.
</p>

<p>
	يكون عنوان الأسئلة والأجوبة غالبًا في مثل تلك المواقع ظاهرًا مع وجود زر مثل <code>+</code> أو <code>-</code> بجانبه للإِشارة إلى أنه يمكنك إظهار المحتوى وإخفاؤه. نفس هذه الوظيفة موجودة في jQuery Mobile. لإنشاء محتوى قابل للطي، إذ ستحتاج إلى إضافة الخاصية <code>data-role="collapsible"‎</code> إلى العنصر الحاوي للعنصر الذي تريد جعله قابلًا للطي.
</p>

<h3 id="-25-">
	المثال 25: بناء محتوى قابل للطي
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_17" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Collapsible Content</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Collapsible Content</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"collapsible"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;h3&gt;</span><span class="pln">I'm a single collapsible element</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
        </span><span class="tag">&lt;p&gt;</span><span class="pln">I'm the content inside of the single collapsible element.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"collapsible-set"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"collapsible"</span><span class="pln"> </span><span class="atn">data-collapsed</span><span class="pun">=</span><span class="atv">"false"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;h3&gt;</span><span class="pln">I'm expanded on page load</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
          </span><span class="tag">&lt;p&gt;</span><span class="pln">I am collapsible content that is visible on page load.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
          </span><span class="tag">&lt;p&gt;</span><span class="pln">That's because of the data-collapsed="false" attribute</span><span class="tag">&lt;/p&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"collapsible"</span><span class="tag">&gt;</span><span class="pln">
          </span><span class="tag">&lt;h3&gt;</span><span class="pln">Expand me I have something to say</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
          </span><span class="tag">&lt;p&gt;</span><span class="pln">I am closed on page load, but still part of an accordion.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
          </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"collapsible"</span><span class="tag">&gt;</span><span class="pln">
            </span><span class="tag">&lt;h3&gt;</span><span class="pln">Wait, are you nested?</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
            </span><span class="tag">&lt;p&gt;</span><span class="pln">Yes! You can even nest your collapsible content!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
          </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h4&gt;</span><span class="pln">Collapsible Content</span><span class="tag">&lt;/h4&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30368" href="https://academy.hsoub.com/uploads/monthly_2019_06/img6.png.12be96a53c584a6f0e2fb47bdc77b2c4.png" rel=""><img alt="img6.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30368" data-unique="z42x8mw4y" src="https://academy.hsoub.com/uploads/monthly_2019_06/img6.thumb.png.21770fd2f1092ccd8dbe3cdd308afe44.png"></a>
</p>

<h2 id="-">
	إضافة شريط أدوات في ترويسة الصفحة
</h2>

<h3 id="-26-">
	مثال 26: إعداد الترويسة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_19" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Header toolbar</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">I am a header toolbar</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30369" href="https://academy.hsoub.com/uploads/monthly_2019_06/img7.png.5e5f086d92c964d185c252f50ab6f97d.png" rel=""><img alt="img7.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30369" data-unique="pjqbp4fvk" src="https://academy.hsoub.com/uploads/monthly_2019_06/img7.thumb.png.da4b04e15307a6a4bab438937395bfaf.png"></a>
</p>

<h3 id="-27-">
	مثال 27: إضافة زر إلى ترويسة الصفحة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_21" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Header toolbar</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"inline"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="com">&lt;!-- first link --&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Purchase</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">I am a header toolbar</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
      </span><span class="com">&lt;!--second link --&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Apply</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30370" href="https://academy.hsoub.com/uploads/monthly_2019_06/img8.png.94f1309c4a5032b46b0d7c3f88a1e534.png" rel=""><img alt="img8.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30370" data-unique="mqrqe1k5x" src="https://academy.hsoub.com/uploads/monthly_2019_06/img8.thumb.png.a3dc02f4da7b8481970e47b79b7ca081.png"></a>
</p>

<p>
	لاحظ أنه لا يتوجب علينا تطبيق الخاصية <code>data-role</code> لتنسيق الرابط مثل حالة الأزرار. سيكون تنسيق الرابط مثل الزر تلقائيًا عند وضعه داخل شريط أدوات الترويسة (header toolbar).
</p>

<p>
	افتراضيًا، يُعرَض الرابط الأول في شريط أدوات الترويسة على الجانب الأيسر من الشريط.
</p>

<h2 id="-">
	إرفاق شريط أدوات للتنقل
</h2>

<p>
	شريط أدوات التنقل (navigation toolbar أو navbar)، هي ودجة (widget) موجودة في jQuery Mobile، تسمح لك بإضافة أزرار تنقل إلى صفحتك.
</p>

<h3 id="-28-">
	مثال 28: صفحة مع شريط تنقل داخل شريط أدوات ترويسة الصفحة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_23" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Header toolbar</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"inline"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="com">&lt;!-- first link --&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Purchase</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">I am a header toolbar</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
      </span><span class="com">&lt;!--second link --&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Apply</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Home</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">About</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Services</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Blogs</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30371" href="https://academy.hsoub.com/uploads/monthly_2019_06/img9.png.7f9be7dd994e1c44aa5677e37184066b.png" rel=""><img alt="img9.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30371" data-unique="e32xuzdug" src="https://academy.hsoub.com/uploads/monthly_2019_06/img9.thumb.png.b0630a00dece0c01e9ee087aa9059c16.png"></a>
</p>

<p>
	تُنشَأ حاوية شريط التنقل كعنصر <code>div</code> مع الخاصية <code>data-role="navbar"‎</code>. لاحظ كيف أنَّ شريط التنقل مرتبط بشريط أدوات ترويسة الصفحة من خلال إنشائه داخله.
</p>

<p>
	سيحتوي العنصر <code>ul</code> على جميع الروابط التي نريد وضعها داخل شريط التنقل والتي تكون ضمن عناصر <code>li</code>.
</p>

<h2 id="-">
	إضافة شريط أدوات الذيل
</h2>

<p>
	تمامًا مثل شريط أدوات الترويسة، يمكنك إضافة شريط أدوات الذيل عن طريق إضافة الخاصية <code>data-role="footer"‎</code> إلى حاوية العنصر.
</p>

<p>
	إليك جزء من شيفرة برمجية لإعداد شريط أدوات الصفحة:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_25" style="">
<span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;h4&gt;</span><span class="pln">I am a footer toolbar</span><span class="tag">&lt;/h4&gt;</span><span class="pln">
</span><span class="tag">&lt;/div&gt;</span></pre>

<p>
	يجب أن يكون هذا الجزء مألوفًا لك إذ يشبه شريط أدوات الترويسة الذي تحدثنا عنه قبل قليل. لنقم بشيء جديد ونغيّر في شريط الأدوات الذيل عن طريق حذف العنصر <code>h4</code> واستبداله ببعض الأزرار.
</p>

<h3 id="-29-">
	مثال 29: إضافة وتنظيم الأزرار باستخدام مجموعة التحكم في ذيل الصفحة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_27" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Header toolbar</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"inline"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="com">&lt;!-- first link --&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Purchase</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">I am a header toolbar</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
      </span><span class="com">&lt;!--second link --&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Apply</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Home</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">About</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Services</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Blogs</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="com">&lt;!--content --&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">CONTENT GOES HERE SHORTLY</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="com">&lt;!--adding footer to your page with tool bar --&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Inquiry</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30372" href="https://academy.hsoub.com/uploads/monthly_2019_06/img10.png.8a4810828d9752d1fa66600225dc4d3b.png" rel=""><img alt="img10.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30372" data-unique="u3crllm63" src="https://academy.hsoub.com/uploads/monthly_2019_06/img10.thumb.png.d8208d2d45011d3b51438d86d7fa88d7.png"></a>
</p>

<h3 id="-30-">
	مثال 30: رصف الأزرار في شريط الأدوات في ذيل الصفحة
</h3>

<p>
	يمكن استخدام خيارين لرصف الأزرار في شريط الأدوات في ذيل الصفحة:
</p>

<ul>
<li>
		رصف المحتوى باستخدام الشبكة (grid):
	</li>
</ul>
<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_29" style="">
<span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-b"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Inquiry</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-c"</span><span class="tag">&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/div&gt;</span></pre>

<ul>
<li>
		رصف المحتوى باستخدام مجموعة التحكم:
	</li>
</ul>
<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_31" style="">
<span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"controlgroup"</span><span class="pln"> </span><span class="atn">data-type</span><span class="pun">=</span><span class="atv">"horizontal"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Inquiry</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/div&gt;</span></pre>

<h3 id="-31-">
	مثال 31: استخدام شريط التنقل في شريط أدوات ذيل الصفحة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_33" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Header toolbar</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"inline"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="com">&lt;!-- first link --&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Purchase</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">I am a header toolbar</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
      </span><span class="com">&lt;!--second link --&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Apply</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Home</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">About</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Services</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Blogs</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="com">&lt;!--content --&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">CONTENT GOES HERE SHORTLY</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="com">&lt;!--adding footer to your page with tool bar --&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Inquiry</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30373" href="https://academy.hsoub.com/uploads/monthly_2019_06/img11.png.4adc165bc2ae88e47547bf6fb744dfb0.png" rel=""><img alt="img11.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30373" data-unique="t7adgytvo" src="https://academy.hsoub.com/uploads/monthly_2019_06/img11.thumb.png.ea22fd13a1acec780ca910cfa366156a.png"></a>
</p>

<p>
	شريط التنقل (navbar) هي ودجة موجودة في jQuery Mobile تسمح لك بإضافة روابط تنقل في صفحتك، وعلى غرار نظام الشبكة المدمج، فإن شريط التنقل قادر على احتواء خمسة أعمدة. ولإضافة شريط التنقل إلى صفحتك، يجب عليك استخدام عنصر الحاوية مع الخاصية <code>data-role="navbar"‎</code>. يجب أن يكون لديك داخل الحاوية قائمة غير مرتبة <code>ul</code> مع كل عمود داخل عنصر <code>li</code>.
</p>

<h2 id="-">
	تموضع أشرطة الأدوات
</h2>

<p>
	تُوضع أشرطة الأدوات في العادة قبل وبعد قسم المحتوى، وهذا معيارٌ في تطوير الويب. في بعض الأحيان، قد تريد إبقاء رأس وذيل الصفحة مرئيًّا دائمًا، خاصة عند استخدام شريط التنقل (navbar)، وتوجد طريقتين لفعل هذا. يمكنك إما استخدام تموضع شريط الأدوات الثابت أو تملئ به الشاشة.
</p>

<h3 id="-">
	التموضع الثابت
</h3>

<p>
	عند استخدام موضع ثابت، سيتحقق jQuery Mobile من الصفحة لمعرفة هل شريط الأدوات ظاهر في العرض أم لا، فإذا كان شريط الأدوات خارج العرض، فسيُدرج في أعلى الصفحة أو أسفلها (بالاعتماد على ما إذا كان شريط الأدوات في رأس أو ذيل الصفحة) ليكون ظاهرًا للمستخدم.
</p>

<p>
	لجعل شريط الأدوات يستخدم الموضع الثابت، تحتاج إلى إضافة الخاصية <code>data-position="fixed"‎</code> إلى شريط الأدوات.
</p>

<h4 id="-31-">
	مثال 31: شريط الأدوات الثابت
</h4>

<p>
	شكل صفحة HTML قبل التمرير إلى الأسفل:
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30374" href="https://academy.hsoub.com/uploads/monthly_2019_06/img12.png.020a337b9cdda2ef41ec024a2633ebaf.png" rel=""><img alt="img12.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30374" data-unique="8mh82rsok" src="https://academy.hsoub.com/uploads/monthly_2019_06/img12.thumb.png.12d2d04de4b43cb2932c270881c5ce10.png"></a>
</p>

<p>
	شكل صفحة HTML بعد التمرير إلى الأسفل:
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30375" href="https://academy.hsoub.com/uploads/monthly_2019_06/img13.png.527403050b66e3481e36e2b4500fcd11.png" rel=""><img alt="img13.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30375" data-unique="3civndqf2" src="https://academy.hsoub.com/uploads/monthly_2019_06/img13.thumb.png.e5e7befa8fdab68be5ddaf353c164bd2.png"></a>
</p>

<p>
	شيفرة HTML هي:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_35" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Toolbars with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Buy Me</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Fixed example</span><span class="tag">&lt;/h1&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Apply Now</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">A button!</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">400px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">This has been styled to take up more space</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">This way you can see what happens when you scroll down the page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">The toolbars will reappear when you stop scrolling</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">You can hide them by clicking or tapping the screen</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<h3 id="-">
	وضع ملئ الشاشة
</h3>

<p>
	يرتبط وضع ملئ الشاشة كثيرًا بالوضع الثابت، والفرق الرئيسي هو وضع الشريط فوق الصفحة بدلًا من أن يكونوا جزءًا منها. يمكن أن ينشئ هذا بعض مشاكل التنقل كالروابط التي قد تكون متاحة في أسفل أو أعلى الصفحة من الأشرطة التي هي الآن تحتهم مباشرة.
</p>

<p>
	من الجيد استخدام وضع ملئ الشاشة عند عرض معرض صور أو مقاطع فيديو. في هذه الأمثلة، يمكن وضع عناصر التحكم في شريط التنقل، مما يُتيح للمستخدم فتح وإغلاق عناصر التحكم عند الحاجة.
</p>

<p>
	ستحتاج إلى إضافة الخاصية <code>data-fullscreen="true"‎</code> إلى عنصر <code>div</code> الذي يملك أيضا الخاصية <code>data-role="page"‎</code> لاستخدام وضع ملئ الشاشة. ويجب عليك التأكد من أن كل من أشرطة أدوات ترويسة وذيل الصفحة تحتوي على <code>data-position="fixed"‎</code>.
</p>

<p>
	يجب علينا تغيير هذا السطر من التعليمات البرمجية السابقة <code>&lt;div data-role="page"‎&gt;</code> إلى هذا السطر <code>&lt;div data-role="page" data-fullscreen="true"‎&gt;</code>
</p>

<h4 id="-32-">
	مثال 32: شريط أدوات في وضع ملئ الشاشة
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_37" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Toolbars with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">data-fullscreen</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Buy Me</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Full Screen </span><span class="tag">&lt;/h1&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Apply Now</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">A button!</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">400px</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">This has been styled to take up more space</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">This way you can see what happens when you scroll down the page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">The toolbars will reappear when you stop scrolling</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">You can hide them by clicking or tapping the screen</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="pln"> </span><span class="atn">data-position</span><span class="pun">=</span><span class="atv">"fixed"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"navbar"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Features</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Supports</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="tag">&gt;</span><span class="pln">Contacts</span><span class="tag">&lt;/a&gt;</span><span class="pln">
          </span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30376" href="https://academy.hsoub.com/uploads/monthly_2019_06/img14.png.534205edbc22219ab1ae8537ba3cc9b2.png" rel=""><img alt="img14.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30376" data-unique="bkzt3bagc" src="https://academy.hsoub.com/uploads/monthly_2019_06/img14.thumb.png.3bbd733a24411fde0553727d5512316d.png"></a>
</p>

<p>
	تذكر أنَّه يمكن الوصول إلى العناصر التي تغطيها أشرطة الأدوات عند استخدام وضع ملئ الشاشة عن طريق الضغط أو لمس في مكان ما على الشاشة لإخفاء الشريط.
</p>

<h2 id="-">
	إضافة تنقل مستمر
</h2>

<p>
	ليكن لدينا عنصر <code>div</code> مع الخاصيات <code>data-role="footer"‎</code>، و <code>data-position="fixed"‎</code> و <code>data-id="rps"‎</code>، أول خاصيتين مطلوبتين لإنشاء شريط أدوات الذيل واستخدام التموضع الثابت، وأما بالنسبة للخاصية <code>data-id=”rps”‎</code> فهي ستُبقِي شريط التنقل ظاهرًا أثناء التنقل بين الصفحات. ويعمل هذا فقط عندما تكون القيمة داخل الخاصية <code>data-id</code> هي نفسها في الصفحة الحالية التي ستنتقل إليها.
</p>

<h3 id="-31-">
	مثال 31: إضافة تنقل مستمر
</h3>

<p>
	معاينة الصفحة features.html:
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30377" href="https://academy.hsoub.com/uploads/monthly_2019_06/img15.png.3ee458622fea90497e01125a121fd999.png" rel=""><img alt="img15.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30377" data-unique="w6bdeh6lx" src="https://academy.hsoub.com/uploads/monthly_2019_06/img15.thumb.png.8dfb2c4d4d3a3f5814144ebd6b846b1a.png"></a>
</p>

<p>
	الانتقال إلى الصفحة supports.html:
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30378" href="https://academy.hsoub.com/uploads/monthly_2019_06/img16.png.ca18ef320304d940355240705ec318a4.png" rel=""><img alt="img16.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30378" data-unique="jjqgoo0rj" src="https://academy.hsoub.com/uploads/monthly_2019_06/img16.thumb.png.28317b2124973715eacdb96401b08ee1.png"></a>
</p>

<p>
	الانتقال إلى الصفحة contacts.html:
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30379" href="https://academy.hsoub.com/uploads/monthly_2019_06/img17.png.626f93c558e8ce46713ffa612fcaf8fc.png" rel=""><img alt="img17.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30379" data-unique="btjn7cdcp" src="https://academy.hsoub.com/uploads/monthly_2019_06/img17.thumb.png.d96829d781963f5044e649e18604046a.png"></a>
</p>

<h2 id="-">
	المدخلات والأزرار
</h2>

<p>
	تُنشئ العديد من أنواع عناصر الإدخال في HTML أزرارًا. في أي وقت تستخدم فيه عنصر إدخال مع الخاصية <code>type</code> مضبوطةً إلى إحدى القيم: <code>submit</code>، أو <code>reset</code>، و <code>button</code>، أو <code>image</code>، سيتحول عنصر الإدخال تلقائيًا إلى زر.
</p>

<p>
	بما أن أنواع المدخلات هذه تتحول تلقائيًا إلى أزرار، لا تحتاج إلى إضافة الخاصية <code>data-role="button"‎</code> كما فعلت عند استخدام زر ذي رابط؛ فقط في حالة كنت تتساءل، يتحول عنصر الزر أيضًا تلقائيًا إلى نمط زر ولا يتطلب أي شيفرة إضافية.
</p>

<h3 id="-32-">
	مثال 32: المدخلات والأزرار (عناصر النموذج)
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_39" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Buttons jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Buttons / Inputs</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Link-based button</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Link-based</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;button&gt;</span><span class="pln"> Element</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;button</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Button</span><span class="tag">&lt;/button&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"submit"</span><span class="tag">&gt;&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"submit"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Submit"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Button"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"reset"</span><span class="tag">&gt;&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"reset"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Reset"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"image"</span><span class="tag">&gt;&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;input</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"image"</span><span class="pln"> </span><span class="atn">value</span><span class="pun">=</span><span class="atv">"Image"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30380" href="https://academy.hsoub.com/uploads/monthly_2019_06/img18.png.efa19f81ee772b0c660f5cac237bc411.png" rel=""><img alt="img18.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30380" data-unique="rkh8tzd68" src="https://academy.hsoub.com/uploads/monthly_2019_06/img18.thumb.png.30124a6bb6c8b01962bb21eed9a52b7d.png"></a>
</p>

<h3 id="-">
	تجاوز التنسيق الافتراضي للزر
</h3>

<p>
	بشكل افتراضي، تملك الأزرار مظهرًا معينًا افتراضيًّا. لمَّا كان الزر يظهر بشكل جيد في أغلب الهواتف والأجهزة المحمولة، فإنه قد يظهر بمظهر غير جميل عندما يقترن بتصميمك. لحسن حظنا، يمكننا تحسين جمالية الزر يدويًّا.
</p>

<h4 id="-33-">
	المثال 33: إنشاء أزرار مع زوايا مدورة ومربعة
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_41" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Buttons jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Buttons</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-corners</span><span class="pun">=</span><span class="atv">"false"</span><span class="tag">&gt;</span><span class="pln">Squared</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Rounded</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-corners</span><span class="pun">=</span><span class="atv">"false"</span><span class="tag">&gt;</span><span class="pln">Squared</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30375" href="https://academy.hsoub.com/uploads/monthly_2019_06/img13.png.527403050b66e3481e36e2b4500fcd11.png" rel=""><img alt="img13.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30375" data-unique="ia2blzlqd" src="https://academy.hsoub.com/uploads/monthly_2019_06/img13.thumb.png.e5e7befa8fdab68be5ddaf353c164bd2.png"></a>
</p>

<h3 id="-">
	إزالة الظل من الأزرار
</h3>

<p>
	هنالك خيار آخر قد ترغب في تغييره وهو مظهر الظل أسفل الزر. يمكن تغيير هذا باستخدام الخاصية <code>data-shadow="false"‎</code>. لا تقتصر على استخدام خاصية <code>data</code> واحدة فقط لكل عنصر، بل يمكنك الجمع بينها للحصول على تنسيقات مختلفة.
</p>

<h4 id="-34-data-">
	المثال34: تغيير مظهر الزر مع الخاصية <code>data</code>
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_43" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Buttons jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Buttons</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-shadow</span><span class="pun">=</span><span class="atv">"false"</span><span class="tag">&gt;</span><span class="pln">No Shadow</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Shadow</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-corners</span><span class="pun">=</span><span class="atv">"false"</span><span class="pln"> </span><span class="atn">data-shadow</span><span class="pun">=</span><span class="atv">"false"</span><span class="tag">&gt;</span><span class="pln">Squared no Shadow</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30381" href="https://academy.hsoub.com/uploads/monthly_2019_06/img20.png.7b3c6a5db0cb6c20eee6930dddadc039.png" rel=""><img alt="img20.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30381" data-unique="a8ldwroxw" src="https://academy.hsoub.com/uploads/monthly_2019_06/img20.thumb.png.aba0aa1fdcacf912010ab6775321b710.png"></a>
</p>

<h3 id="-">
	تغيير حجم الزر
</h3>

<p>
	عندما أنشأنا سابقًا الزر، لم نقلق بشأن حجمه، في حين قد لا تحتاج إلى تغيير الحجم الافتراضي للزر، لكن قد تواجه بعض المشاكل أو بعض النتائج غير المتوقعة مع الحجم الافتراضي.
</p>

<h4 id="-35-data-">
	مثال 35: تغيير عرض الزر الافتراضي مع الخاصية <code>data</code>
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_45" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Buttons jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Buttons</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Full Width Button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-inline</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Inline Button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30382" href="https://academy.hsoub.com/uploads/monthly_2019_06/img21.png.6b7b091ac1e53b55bdcc142f74bd6ac0.png" rel=""><img alt="img21.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30382" data-unique="zq93u8ldo" src="https://academy.hsoub.com/uploads/monthly_2019_06/img21.thumb.png.6e43d3decd544db2249305d712b11eb5.png"></a>
</p>

<p>
	أضفنا الخاصية <code>data-inline="true"‎</code> إلى العنصر، وذلك يجعل الزر يستخدم مساحة تعادل المحتوى الذي بداخله فقط.
</p>

<h4 id="-36-">
	المثال 36: وضع الزر في سطر
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_47" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Buttons jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Buttons</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-inline</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">An Inline Button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-inline</span><span class="pun">=</span><span class="atv">"true"</span><span class="tag">&gt;</span><span class="pln">Also an Inline Button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30383" href="https://academy.hsoub.com/uploads/monthly_2019_06/img22.png.27f35dbdb8396009b638884819fc274b.png" rel=""><img alt="img22.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30383" data-unique="8qy2jgt6l" src="https://academy.hsoub.com/uploads/monthly_2019_06/img22.thumb.png.272629656ad3583f23adb255ebb64062.png"></a>
</p>

<p>
	كلا الزرّين يملكان الخاصية <code>data-inline="true"‎</code> وهذا يعني أن كلا الزرّين سيظهران بجانب بعضهما البعض، وإضافة المزيد من الأزرار مع استخدام نفس الخاصية سيستمر بوضعهم بجانب بعضهم البعض إلى أن يصل إلى الحد الأقصى لعرض الصفحة.
</p>

<h3 id="-">
	ضبط عرض الزر وموقعه باستخدام الشبكة
</h3>

<h4 id="-37-">
	مثال 37: ضبط عرض الزر وموقعه باستخدام الشبكة
</h4>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_2360_49" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Buttons jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Buttons</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-grid-a"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-a"</span><span class="tag">&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Left</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
        </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-block-b"</span><span class="tag">&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Right</span><span class="tag">&lt;/a&gt;</span><span class="pln">
        </span><span class="tag">&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30384" href="https://academy.hsoub.com/uploads/monthly_2019_06/img23.png.e6147bf50c3e655b9f0781a59e30529b.png" rel=""><img alt="img23.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30384" data-unique="r1y7snxp1" src="https://academy.hsoub.com/uploads/monthly_2019_06/img23.thumb.png.cd6f1e84ee72faf7ddafdcd7b640d98b.png"></a>
</p>

<p>
	في هذا المثال، يمكننا رؤية شبكة بسيطة مكونة من عمودين. الصنف <code>ui-block-a</code> ينظم المحتوى في العمود الأول من الشبكة في حين يرصف الصنف <code>ui-block-b</code> المحتوى في العمود الثاني.
</p>

<p>
	ترجمة -وبتصرّف- للمقال <a href="https://www.script-tutorials.com/jquery-mobile-lesson-4/" rel="external nofollow">jQuery Mobile Lesson 4</a> لصاحبه Andrew
</p>

<h2>
	اقرأ أيضًا
</h2>

<ul>
<li>
		الدرس التالي: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AE%D8%A7%D9%85%D8%B3-%D8%A7%D9%84%D8%A3%D9%8A%D9%82%D9%88%D9%86%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%B2%D8%B1%D8%A7%D8%B1-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D8%A7%D8%AA-%D9%85%D8%AE%D8%B5%D8%B5%D8%A9-r717/" rel="">الأيقونات والأزرار وإنشاء تنسيقات مخصصة</a>
	</li>
	<li>
		الدرس السابق: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%84%D8%AB-%D8%A7%D8%AA%D8%AC%D8%A7%D9%87-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB%D9%87%D8%A7-r702/" rel=""> اتجاه الصفحة وأحداثها</a>
	</li>
</ul>
]]></description><guid isPermaLink="false">703</guid><pubDate>Tue, 16 Jul 2019 13:00:00 +0000</pubDate></item><item><title>&#x627;&#x644;&#x62F;&#x631;&#x633; &#x627;&#x644;&#x62B;&#x627;&#x644;&#x62B;: &#x627;&#x62A;&#x62C;&#x627;&#x647; &#x627;&#x644;&#x635;&#x641;&#x62D;&#x629; &#x648;&#x623;&#x62D;&#x62F;&#x627;&#x62B;&#x647;&#x627;</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%84%D8%AB-%D8%A7%D8%AA%D8%AC%D8%A7%D9%87-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB%D9%87%D8%A7-r702/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2019_06/5d10ae8e7c6e0_.jpg.af4bbeac7a51f1056185b61344caf842.jpg" /></p>

<p>
	يتحدث هذا الدرس الجديد عن اتجاه صفحة الهاتف، وأحداث الصفحة (مثل pagebeforecreate، و pagecreate، و pageinit ...إلخ)، واللمس وأحداث التمرير (مثل swipe) وأحداث الفأرة الافتراضية. ستجد العديد من الأمثلة تشرح لك هذه الأحداث.
</p>

<p>
	هذا الدرس جزء من <a href="https://academy.hsoub.com/tags/jquery%20mobile/" rel="">سلسلة دروس تشرح jQuery Mobile</a>:
</p>

<ul>
<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%A3%D9%88%D9%84-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9%D8%8C-%D8%A8%D9%86%D8%A7%D8%A1-%D9%88%D8%AA%D9%82%D8%AF%D9%8A%D9%85-%D9%85%D8%AD%D8%AA%D9%88%D9%89-r629/" rel="">الدرس الأول: البداية، بناء وتقديم محتوى</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%86%D9%8A-%D8%A7%D9%84%D8%AA%D8%B6%D9%85%D9%8A%D9%86%D8%8C-%D8%AA%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9%D8%8C-%D8%A7%D9%84%D8%AA%D9%86%D9%82%D9%84-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-%D8%A7%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-r633/" rel="">الدرس الثاني: التضمين، تهيئة الصفحة، التنقل بين الصفحات وأحداث التحميل</a>
	</li>
	<li>
		الدرس الثالث: اتجاه الصفحة وأحداثها
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D8%B1%D8%A8%D8%B7-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AE%D8%A7%D8%B1%D8%AC%D9%8A%D8%A9-%D9%88%D8%AA%D9%86%D8%B8%D9%8A%D9%85-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D8%A8%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A9-%D9%88%D8%A8%D9%86%D8%A7%D8%A1-%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%B7%D9%8A-r703/" rel="">الدرس الرابع: ربط صفحات خارجية وتنظيم المحتوى بنظام الشبكة وبناء محتوى قابل للطي</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AE%D8%A7%D9%85%D8%B3-%D8%A7%D9%84%D8%A3%D9%8A%D9%82%D9%88%D9%86%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%B2%D8%B1%D8%A7%D8%B1-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D8%A7%D8%AA-%D9%85%D8%AE%D8%B5%D8%B5%D8%A9-r717/" rel="">الدرس الخامس: الأيقونات والأزرار وإنشاء تنسيقات مخصصة</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B3%D8%A7%D8%AF%D8%B3-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%A7%D9%84%D9%82%D9%88%D8%A7%D8%A6%D9%85-%D9%88%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D9%87%D8%A7-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D9%86%D9%85%D8%A7%D8%B0%D8%AC-%D8%A7%D9%84%D8%A8%D8%AD%D8%AB-%D9%88%D8%AA%D8%B3%D8%AC%D9%8A%D9%84-%D8%A7%D9%84%D8%AF%D8%AE%D9%88%D9%84-r718/" rel="">الدرس السادس: إنشاء القوائم وتنسيقها وإنشاء نماذج البحث وتسجيل الدخول</a>
	</li>
</ul>
<h2 id="-">
	التكيف مع حدث الاتجاه
</h2>

<p>
	هنالك خيارين/وضعين لاتجاه الشاشة عند عرض جهاز الهاتف، فعند عرض الصفحة عموديًا (portrait)، هذا يعني أن ارتفاع الشاشة أكبر من عرضها، وعند عرض الصفحة أفُقيًّا (landscape)، سيكون عرض الصفحة أكبر من طولها.
</p>

<p>
	ما لم يُقفل الجهاز على وضع عرض واحد، يمكن أن تستدير الشاشة وسيتحول المحتوى تلقائيا للاستفادة من المساحة الإضافية، بينما يعالج jQuery Mobile تغيير حجم العديد من العناصر، قد تحتاج إلى تشغيل دالة معينة كلما تغيّر وضع الشاشة.
</p>

<h3 id="-7-orientationchange-">
	المثال 7: استخدام الحدث <code>orientationchange</code>، حدث تغيير الاتجاه
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_7" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.11.3.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pagecreate"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">){</span><span class="pln">
    $</span><span class="pun">(</span><span class="pln">window</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"orientationchange"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln">
      </span><span class="kwd">if</span><span class="pun">(</span><span class="pln">window</span><span class="pun">.</span><span class="pln">orientation </span><span class="pun">==</span><span class="pln"> </span><span class="lit">0</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        $</span><span class="pun">(</span><span class="str">"p"</span><span class="pun">).</span><span class="pln">text</span><span class="pun">(</span><span class="str">"The orientation has changed to portrait!"</span><span class="pun">).</span><span class="pln">css</span><span class="pun">({</span><span class="str">"background-color"</span><span class="pun">:</span><span class="str">"yellow"</span><span class="pun">,</span><span class="str">"font-size"</span><span class="pun">:</span><span class="str">"300%"</span><span class="pun">});</span><span class="pln">
      </span><span class="pun">}</span><span class="pln"> </span><span class="kwd">else</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        $</span><span class="pun">(</span><span class="str">"p"</span><span class="pun">).</span><span class="pln">text</span><span class="pun">(</span><span class="str">"The orientation has changed to landscape!"</span><span class="pun">).</span><span class="pln">css</span><span class="pun">({</span><span class="str">"background-color"</span><span class="pun">:</span><span class="str">"pink"</span><span class="pun">,</span><span class="str">"font-size"</span><span class="pun">:</span><span class="str">"200%"</span><span class="pun">});</span><span class="pln">
      </span><span class="pun">}</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">The orientationchange Event</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"main"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Try to rotate your device!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;b&gt;</span><span class="pln">Note:</span><span class="tag">&lt;/b&gt;</span><span class="pln"> You must use a mobile device, or a mobile emulator to see the effect of this event.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer Text</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_9" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Page orientaton Event</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.11.3.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'pageinit'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $</span><span class="pun">(</span><span class="pln">window</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'orientationchange'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">e</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      $</span><span class="pun">(</span><span class="str">"#mode"</span><span class="pun">).</span><span class="pln">html</span><span class="pun">(</span><span class="str">'orientation is currently '</span><span class="pun">+</span><span class="pln">e</span><span class="pun">.</span><span class="pln">orientation</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"mode"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Page orientaton Event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"main"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Content in orientation</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"pageexist.html"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">External Page Exist</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"page_notexist.html"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">No Page Exist</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Try to rotate your device!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;b&gt;</span><span class="pln">Note:</span><span class="tag">&lt;/b&gt;</span><span class="pln"> You must use a mobile device, or a mobile emulator to see the effect of this event.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Script-tutorials.com</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<h2 id="-jquery-mobile">
	تهيئة الصفحة في jQuery mobile
</h2>

<h3 id="-8-jquery-mobile">
	المثال 8: تهيئة الصفحة في jQuery mobile
</h3>

<p>
	شيفرة الصفحة قبل تهيئة jQuery Mobile:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_11" style="">
<span class="com">&lt;!-- begin first page --&gt;</span><span class="pln">
</span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;&lt;/header&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;p&gt;</span><span class="pln">First page!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Footer</span><span class="tag">&lt;/h1&gt;&lt;/footer&gt;</span><span class="pln">
</span><span class="tag">&lt;/section&gt;</span><span class="pln">
</span><span class="com">&lt;!-- end first page →</span></pre>

<p>
	شيفرة الصفحة بعد تهيئة jQuery Mobile:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_13" style="">
<span class="com">&lt;!-- begin first page --&gt;</span><span class="pln">
</span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-page ui-body-c ui-page-active"</span><span class="pln"> </span><span class="atn">data-url</span><span class="pun">=</span><span class="atv">"page1"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">role</span><span class="pun">=</span><span class="atv">"banner"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar-a ui-header"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;h1</span><span class="pln"> </span><span class="atn">aria-level</span><span class="pun">=</span><span class="atv">"1"</span><span class="pln"> </span><span class="atn">role</span><span class="pun">=</span><span class="atv">"heading"</span><span class="pln"> </span><span class="atn">tabindex</span><span class="pun">=</span><span class="atv">"0"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-title"</span><span class="tag">&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
  </span><span class="tag">&lt;/header&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">role</span><span class="pun">=</span><span class="atv">"main"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-content"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;p&gt;</span><span class="pln">First page!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">role</span><span class="pun">=</span><span class="atv">"contentinfo"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-bar-a ui-footer"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;h1</span><span class="pln"> </span><span class="atn">aria-level</span><span class="pun">=</span><span class="atv">"1"</span><span class="pln"> </span><span class="atn">role</span><span class="pun">=</span><span class="atv">"heading"</span><span class="pln"> </span><span class="atn">tabindex</span><span class="pun">=</span><span class="atv">"0"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-title"</span><span class="tag">&gt;</span><span class="pln">Footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
  </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
</span><span class="tag">&lt;/section&gt;</span><span class="pln">
</span><span class="com">&lt;!-- end first page →</span></pre>

<p>
	تعطي كلا الشيفرتين نفس النتيجة:
</p>

<p style="text-align: center;">
	<img alt="img4.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30342" data-unique="sauz4grzr" src="https://academy.hsoub.com/uploads/monthly_2019_06/img4.png.fee49c66db57c76767d8413fcb366ea2.png"></p>

<p>
	عند إنشاء تطبيق jQuery، من الشائع ربط معالجات الحدث (event handlers) في حدث تحميل الصفحة (document load)، ويمكنك فعل شيء مشابه باستخدام أحداث عرض الصفحة وإخفاء الصفحة في jQuery Mobile، لكن كن حذرًا، بما أن أحداث عرض وإخفاء الصفحة تعمل في كل مرة يحدث فيها انتقالًا للصفحة. فقد تربط معالجات الحدث أكثر من مرة، فعلى سبيل المثال، إذا ربطت مستمع حدث الضغط إلى عنصر داخل حدث عرض الصفحة (page show event)، فإن مستمع حدث الضغطة يرتبط في كل مرة تظهر فيها الصفحة، وهذا جيد إذا كنت تستخدم تلك الصفحة فقط، لكن إذا ذهب المستخدم لتلك الصفحة عدة مرات، فإن مستمع الحدث سيرتبط عدة مرات.
</p>

<p>
	لحل هذه المشكلة، يمكنك إما التحقق لمعرفة إذا كان معالج الحدث قد رُبط بالفعل (لكن لا تربطه مرة أخرى)، أو مسح الارتباط في كل مرة قبل إعادة الربط. وإذا استخدمت الطريقة الأخيرة، فاستعمال مجالات الأسماء (namespacing) سيكون مُفيدًا. للمزيد من المعلومات حول الأحداث ذات الأسماء المصنفة ضمن مجالات أسماء، راجع <a href="https://wiki.hsoub.com/jQuery/on#.D8.A3.D8.B3.D9.85.D8.A7.D8.A1_.D8.A7.D9.84.D8.A3.D8.AD.D8.AF.D8.A7.D8.AB_.D9.88.D9.85.D8.AC.D8.A7.D9.84.D8.A7.D8.AA_.D8.A3.D8.B3.D9.85.D8.A7.D8.A6.D9.87.D8.A7_.28Event_names_and_namespaces.29" rel="external">هذا التوثيق</a>.
</p>

<p>
	الأحداث المحدِّدة ضمن مجالات أسماء هي أداة مفيدة جدًا يمكن وضعها في صندوق أدوات jQuery.
</p>

<h2 id="-pagebeforecreate-">
	استخدام الحدث <code>pagebeforecreate</code> لإضافة خاصية بشكل ديناميكي
</h2>

<p>
	يُستخدم الحدث <code>pagebeforecreate</code> عندما تملك محتوى تريد تغييره قبل أن يمتلك jQuery Mobile فرصة لقفله وكتابة <code>data-roles</code> وخاصيات عناصر الصفحة إلى DOM.
</p>

<h3 id="-9-pagebeforecreate-">
	المثال 9: استخدام الحدث <code>pagebeforecreate</code> لإضافة خاصية بشكل ديناميكي
</h3>

<p>
	يبدأ الملف كملف HTML قياسي يستخدم jQuery Mobile، لكننا بدأنا بالعنصر <code>script</code>، تُستخدم بعض الشيفرات البرمجية لـ jQuery لربط الحدث <code>pagebeforecreate</code> إلى الصفحة، ويتم هذا باستخدام الدالة ‎.on()‎ المتوفرة عند استخدام الإصدار jQuery 1.7 ومابعده. عندما يبحث الحدث <code>pagebeforecreate</code> على أية عناصر تملك الخاصية <code>class="modify"‎</code> وتطبق الخاصية <code>datainset="true"‎</code> إلى أي واحدة يُعثَر عليها باستخدام الدالة <code>‎.attr()‎</code>.
</p>

<p>
	يرى jQuery Mobile الخاصية <code>data-inset="true"‎</code> ويضعها في قائمة بسبب عمل الحدث <code>pagebeforecreate</code> قبل إضافة شيفرة الصفحة إلى DOM.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_15" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Developing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'pagebeforecreate'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $</span><span class="pun">(</span><span class="str">".modify"</span><span class="pun">).</span><span class="pln">attr</span><span class="pun">(</span><span class="str">'data-inset'</span><span class="pun">,</span><span class="str">'true'</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pagebeforecreate event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">The following list will be inset during the pagebeforecreate event</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"modify"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"listview"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">A</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">B</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">C</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30343" href="https://academy.hsoub.com/uploads/monthly_2019_06/img5.png.04c530579f2ea5b352fa92b6f3031a32.png" rel=""><img alt="img5.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30343" data-unique="pitbabju2" src="https://academy.hsoub.com/uploads/monthly_2019_06/img5.thumb.png.747f5aef785bc4703cdeabd2385af4c0.png"></a>
</p>

<h2 id="-pagecreate-">
	استخدام الحدث <code>pagecreate</code>
</h2>

<p>
	يمكن استخدام الحدث <code>pagecreate</code> إما لتطبيق الودجات (widgets) الخاصة بك أو استخدام ودجة (widget) مدمجة أو إضافة تحكم يوفرها jQuery Mobile.
</p>

<h3 id="-8-pagecreate-listview">
	المثال 8: استخدام الحدث <code>pagecreate</code> بالاقتران مع الإضافة listview
</h3>

<p>
	تبدأ الشيفرة البرمجية كصفحة قياسية باستخدام jQuery Mobile، وتستخدم الدالة <code>‎.on()‎</code> الحدث <code>pagecreate</code> للعمل.
</p>

<p>
	هنالك مُحدد (selector) لإيجاد أي عنصر في الصفحة التي تملك الخاصية <code>class="modify"‎</code> ومن ثم يُضيف الخاصية <code>data-inset="true"‎</code>. وبعد فعل ذلك، يمكنك أن ترى عمل الدالة <code>listview()‎</code>. تُعرف هذه الدالة على أنها الإضافة listview وتُستخدم لتطبيق نمط وشكل أي قائمة. السطر 11 هو نهاية الدالة <code>‎.on()‎</code>، والتي هي ربط للحدث <code>pagecreate</code>.
</p>

<p>
	هنالك عنصر <code>ul</code> يحتوي فقط على الخاصية <code>class="modify"‎</code>؛ الخاصية <code>data-role="listview"‎</code> لن تكون موجودة ولا الخاصية <code>data-inset="true"‎</code>.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_17" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Developing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'pagecreate'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $</span><span class="pun">(</span><span class="str">".modify"</span><span class="pun">).</span><span class="pln">attr</span><span class="pun">(</span><span class="str">'data-inset'</span><span class="pun">,</span><span class="str">'true'</span><span class="pun">).</span><span class="pln">listview</span><span class="pun">();</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pagecreate event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">The following list will be styled during the pagecreate event</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;ul</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"modify"</span><span class="tag">&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">A</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">B</span><span class="tag">&lt;/li&gt;</span><span class="pln">
        </span><span class="tag">&lt;li&gt;</span><span class="pln">C</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30344" href="https://academy.hsoub.com/uploads/monthly_2019_06/img6.png.68552adfe910a08d5fcc8da74f2ca21c.png" rel=""><img alt="img6.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30344" data-unique="5uwoj1pz2" src="https://academy.hsoub.com/uploads/monthly_2019_06/img6.thumb.png.660ccc4920f1c826d2b5561670bc86c6.png"></a>
</p>

<h2 id="-pageinit-">
	استخدام الحدث <code>pageinit</code>
</h2>

<p>
	أفضل وصف للحدث <code>pageinit</code> هو: «استخدمه كما لو تستخدم الدالة <code>‎$(document).ready()‎</code> في jQuery. يعمل هذا الحدث بعد تحميل DOM وعمل جميع الودجات والإضافات، ويعمل أيضًا كلما تُحمّلت الصفحة إما مباشرةً أو من خلال استدعاء AJAX من الصفحة الأخرى، وسيعمل هذا الحدث مرة واحدة عند تضمينه في DOM.
</p>

<h3 id="-pageinit-">
	استخدام <code>pageinit</code> عند تحميل صفحة ثانية
</h3>

<p>
	يجب أن يكون الإعداد الأولي للصفحة مألوفًا بالنسبة لك الآن؛ في البداية، يمكنك أن ترى أنه يستخدم نفس الأسلوب لربط الحدث <code>pageinit</code> كما رُبِط الحدث<code>pagebeforecreate</code> والحدث <code>pagecreate</code>. الفرق هو في استخدام مُحدد (selector) لعنصر ذي المُعرِّف <code>id="away"‎</code> في الدالة <code>‎.on()‎</code> لربط الدالة <code>alert()‎</code> التي ستعمل فقط على الصفحة التي تطابق ذلك المحدد عند تحميلها لأول مرة في DOM.
</p>

<p>
	بالنزول إلى الأسفل أكثر، سترى أن الصفحة أُعدّت مع عنصر <code>div</code> باستخدام الخاصية <code>data-role="page"‎</code>.
</p>

<h3 id="-9-pageinit-">
	المثال 9: استخدام <code>pageinit</code> عند تحميل الصفحة الثانية
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_19" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: Developing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'pageinit'</span><span class="pun">,</span><span class="str">'#away'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"The pageinit event has been run"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pageinit event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">I am the #home page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#away"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go Away</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"away"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pageinit event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">
      I am the #away page. The pageinit event runs on first page load.
      </span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#home"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go Back</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p>
	الصورة الأولى للمعاينة في المتصفح.
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30345" href="https://academy.hsoub.com/uploads/monthly_2019_06/img7.png.94d5f398d7e373db969f45f69af857b1.png" rel=""><img alt="img7.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30345" data-unique="hbeq3y6x1" src="https://academy.hsoub.com/uploads/monthly_2019_06/img7.thumb.png.205bd4bac50e6e41a393cfdee1e32965.png"></a>
</p>

<p>
	الصور الثانية تظهر عند الضغط على الزر Go Away في المتصفح.
</p>

<p style="text-align: center;">
	<img alt="img22.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30358" data-unique="ox0klflg3" src="https://academy.hsoub.com/uploads/monthly_2019_06/img22.png.2a9ddb91af4187b0f031e03b966ee091.png"></p>

<p>
	الصورة الثالث هي للصورة المُهيَّأة.
</p>

<p style="text-align: center;">
	<img alt="img22.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30358" data-unique="dd31cx8md" src="https://academy.hsoub.com/uploads/monthly_2019_06/img22.png.2a9ddb91af4187b0f031e03b966ee091.png"></p>

<p>
	الآن لننظر في نمط تهيئة الصفحة في jQuery Mobile.
</p>

<h3 id="-10-">
	المثال 10: تغريدة جميلة دون سكربت التهيئة
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_21" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: My first mobile site</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style&gt;</span><span class="pln">
    img </span><span class="pun">{</span><span class="pln">max</span><span class="pun">-</span><span class="pln">width</span><span class="pun">:</span><span class="lit">100</span><span class="pun">%;}</span><span class="pln"> p</span><span class="pun">{</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- begin first page --&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Nice Tweet</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Twitter feed goes here.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#page2"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Settings</span><span class="tag">&lt;/a&gt;&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/twitter-logo-hashtag.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Twitter settings"</span><span class="pln"> </span><span class="tag">/&gt;&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;h2&gt;</span><span class="pln">Because the world needed another Twitter app.</span><span class="tag">&lt;/h2&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- end first page --&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- Begin second page --&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page2"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln"> Nice Tweet: Settings</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Settings go here. </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go back</span><span class="tag">&lt;/a&gt;&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/business-twitter-page-img.png"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Settings"</span><span class="pln"> </span><span class="tag">/&gt;&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h2&gt;</span><span class="pln">Because the world needed another Twitter app.</span><span class="tag">&lt;/h2&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- end second page --&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_23" style="">
<span class="tag">&lt;script&gt;</span><span class="pln">
$</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">ready</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  </span><span class="com">// Refresh the feed on first load</span><span class="pln">
  </span><span class="com">// (pretend we've written this function elsewhere)</span><span class="pln">
  refreshFeed</span><span class="pun">();</span><span class="pln">
  $</span><span class="pun">(</span><span class="str">"#page1"</span><span class="pun">).</span><span class="pln">bind</span><span class="pun">(</span><span class="str">"pageshow"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln"> ui</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    </span><span class="com">// Refresh the feed on subsequent page shows</span><span class="pln">
    refreshFeed</span><span class="pun">();</span><span class="pln">
  </span><span class="pun">})</span><span class="pln">
</span><span class="pun">})</span><span class="pln">
</span><span class="tag">&lt;/script&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30346" href="https://academy.hsoub.com/uploads/monthly_2019_06/img10.png.5b8695f9e106b81547187f05a7d1da87.png" rel=""><img alt="img10.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30346" data-unique="c2y2u7asm" src="https://academy.hsoub.com/uploads/monthly_2019_06/img10.thumb.png.1f2ae3bc2dfd46db72833ceb919a3755.png"></a>
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30347" href="https://academy.hsoub.com/uploads/monthly_2019_06/img11.png.3a742c3eced5ca8a88aee9ef77a89c77.png" rel=""><img alt="img11.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30347" data-unique="ol7kh9vs4" src="https://academy.hsoub.com/uploads/monthly_2019_06/img11.thumb.png.49bdcfd47eb1ee37a4644a955de4b7b5.png"></a>
</p>

<h2 id="-">
	أحداث اللمس
</h2>

<p>
	عند تفاعل المستخدم مع موقعك عن طريق اللمس، ستعمل أحداث اللمس، ويمكنك الاستفادة من هذه الأحداث لعمل دوال مخصصة.
</p>

<p>
	استخدام أحداث <code>tap</code> الفرق الرئيسي بين حدث النقر <code>click</code> وحدث بدء اللمس <code>touchstart</code> هو حوالي 300 ملي ثانية. في حين أن هذا لا يبدو فارقًا كبيرًا في الوقت، لكن تأخير ثلث ثانية قد يجعل موقعك أو تطبيقك يبدو بطيئًا وغير متجاوب.
</p>

<p>
	بينما يُستخدم الحدث <code>tap</code> بشكل افتراضي على الروابط، والقوائم، وودجات وإضافات jQuery Mobile المتشابهة، يمكنك استخدام الحدث <code>tap</code> لتنفيذ دوال مخصصة في مختلف عناصر صفحتك.
</p>

<h3 id="-11-tap-taphold-">
	مثال 11: استخدام الحدثين <code>tap</code> و <code>taphold</code>
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_25" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Developing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pageinit"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(){</span><span class="pln">
    $</span><span class="pun">(</span><span class="str">"#home"</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'tap'</span><span class="pun">,</span><span class="pln"> </span><span class="str">'#image'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln"> ui</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      </span><span class="kwd">var</span><span class="pln"> tapCaption </span><span class="pun">=</span><span class="pln"> $</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">).</span><span class="pln">data</span><span class="pun">(</span><span class="str">"tap"</span><span class="pun">);</span><span class="pln">
      $</span><span class="pun">(</span><span class="str">"#caption"</span><span class="pun">).</span><span class="pln">addClass</span><span class="pun">(</span><span class="str">"comment"</span><span class="pun">).</span><span class="pln">html</span><span class="pun">(</span><span class="pln">tapCaption</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
    $</span><span class="pun">(</span><span class="str">"#home"</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'taphold'</span><span class="pun">,</span><span class="str">'#caption'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln"> ui</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      </span><span class="kwd">var</span><span class="pln"> $this </span><span class="pun">=</span><span class="pln"> $</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">);</span><span class="pln">
      </span><span class="kwd">var</span><span class="pln"> tapholdCaption </span><span class="pun">=</span><span class="pln"> $this</span><span class="pun">.</span><span class="pln">data</span><span class="pun">(</span><span class="str">"appTaphold"</span><span class="pun">);</span><span class="pln">
      $this</span><span class="pun">.</span><span class="pln">html</span><span class="pun">(</span><span class="pln">tapholdCaption</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/css"</span><span class="tag">&gt;</span><span class="pln">
  img </span><span class="pun">{</span><span class="pln">max</span><span class="pun">-</span><span class="pln">width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">100</span><span class="pun">%}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">comment </span><span class="pun">{</span><span class="pln">background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFF;border-radius: 5px;</span><span class="pln">
  border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">2px</span><span class="pln"> solid </span><span class="com">#000;padding: 5px}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Tap Events</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Tap or tap-and-hold the image below.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"image"</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/golden_gate.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"An image of a river"</span><span class="pln"> </span><span class="atn">data-tap</span><span class="pun">=</span><span class="atv">"You tapped the picture, try tap-and-holding on this caption"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"caption"</span><span class="pln"> </span><span class="atn">data-app-taphold</span><span class="pun">=</span><span class="atv">"This picture was taken during a flood."</span><span class="tag">&gt;</span><span class="pln">Caption</span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30348" href="https://academy.hsoub.com/uploads/monthly_2019_06/img12.png.f13a1ab119878e7e041e43dc5f6049c7.png" rel=""><img alt="img12.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30348" data-unique="pkrhhozc2" src="https://academy.hsoub.com/uploads/monthly_2019_06/img12.thumb.png.826ee5f2ec7f0a4a00517cd5391acd4f.png"></a>
</p>

<p center="" class="style=" text-align:="">
	يجب ربط الحدثين <code>tap</code> و <code>taphold</code> إما في الدالة <code>document.ready()‎</code> أو داخل الحدث <code>pageinit</code>. بما أننا نعلم بالفعل أنه من غير المستحسن استخدام الدالة <code>document.ready()‎</code> مع jQuery Mobile، لذلك سنربط الحدث <code>pageinit</code> باستخدام الدالة <code>‎.on()‎</code>. داخل الدالة، يمكنك رؤية الدالة <code>‎.on()‎</code> تربط الحدث <code>tap</code> إلى عنصر يملك الخاصية <code>id="image"‎</code>.
</p>

<h2 id="-">
	استخدام أحداث التمرير
</h2>

<p>
	من الشائع التمرير في الهاتف عند التنقل في معرض صور، وحذف بريد إلكتروني، وإحضار معلومات الاتصال …إلخ. يمكنك مع jQuery Mobile استخدام ثلاثة أحداث متعلقة بالتمرير هي: <code>swipe</code>، و <code>swipeleft</code>، و <code>swiperight</code>. تشبه عملية التمرير (swipe) في الهاتف المحمول عملية النقر والسحب (click-and-drag ) في الحاسوب. ليعمل أي حدث من أحداث التمرير، يجب أن يتحرك اللمس على أكثر من 30 بيكسل أفقيًا ويبقى 1 ثانية ليكتمل، كما أنه لا يجب أن يتحرك أكثر من 20 بيكسل عموديًا وإلا سيُلغى تشغيل الحدث.
</p>

<h3 id="-12-">
	مثال 12: استخدام أحداث التمرير
</h3>

<p>
	ستُعرض الصورة في الأسفل عند تمرير المربع إلى اليمين كما يظهر على متصفح هاتفك في جهازك المحمول.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_27" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Developing with jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'pageinit'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $</span><span class="pun">(</span><span class="str">"#home"</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'swipe'</span><span class="pun">,</span><span class="str">'#swipe'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln"> ui</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      $</span><span class="pun">(</span><span class="str">"#caption"</span><span class="pun">).</span><span class="pln">html</span><span class="pun">(</span><span class="str">"Swipe detected!"</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
    $</span><span class="pun">(</span><span class="str">"#home"</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'swipeleft'</span><span class="pun">,</span><span class="str">'#swipe-box'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln"> ui</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      </span><span class="pun">(</span><span class="str">"#caption"</span><span class="pun">).</span><span class="pln">html</span><span class="pun">(</span><span class="str">"Swipe to the left detected!"</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
    $</span><span class="pun">(</span><span class="str">"#home"</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">'swiperight'</span><span class="pun">,</span><span class="str">'#swipe-box'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln"> ui</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      $</span><span class="pun">(</span><span class="str">"#caption"</span><span class="pun">).</span><span class="pln">html</span><span class="pun">(</span><span class="str">"Swipe to the right detected!"</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/css"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="com">#swipe-box {</span><span class="pln">
    width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">200px</span><span class="pun">;</span><span class="pln">
    height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">200px</span><span class="pun">;</span><span class="pln">
    background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFF;</span><span class="pln">
    border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">2px</span><span class="pln"> solid </span><span class="com">#000</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="pun">.</span><span class="pln">comment </span><span class="pun">{</span><span class="pln">
    background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#FFF;</span><span class="pln">
    border</span><span class="pun">-</span><span class="pln">radius</span><span class="pun">:</span><span class="pln"> </span><span class="lit">5px</span><span class="pun">;</span><span class="pln">
    border</span><span class="pun">:</span><span class="pln"> </span><span class="lit">2px</span><span class="pln"> solid </span><span class="com">#000;</span><span class="pln">
    padding</span><span class="pun">:</span><span class="pln"> </span><span class="lit">5px</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"home"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Swipe Events</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swipe"</span><span class="tag">&gt;</span><span class="pln">Take a swipe this text or at the box below.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"swipe-box"</span><span class="tag">&gt;&lt;/div&gt;</span><span class="pln">
      </span><span class="tag">&lt;br</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"caption"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"comment"</span><span class="tag">&gt;</span><span class="pln">Waiting for swipe...</span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30349" href="https://academy.hsoub.com/uploads/monthly_2019_06/img13.png.57782ed82bca3334a0dedf6b93bef7fc.png" rel=""><img alt="img13.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30349" data-unique="j2t998t8c" src="https://academy.hsoub.com/uploads/monthly_2019_06/img13.thumb.png.1e7d99b5a869159afd92d641ee56bad7.png"></a>
</p>

<h2 id="-">
	أحداث الفأرة الافتراضية
</h2>

<p>
	أحداث الفأرة الافتراضية هي حل لمشاكل التوافق بين متصفحات الهاتف والحاسوب، فعلى سبيل المثال، تدعم بعض المتصفحات حدثًا يسمى <code>touchstart</code> في حين بعض المتصفحات الأخرى لا تدعمه.
</p>

<p>
	تدعم متصفحات الحاسوب الحدث <code>mousemove</code> وتدعم الحومان (hover) عبر استخدام الحدث <code>mouseover</code> في حين تواجه أجهزة الهاتف صعوبةً في محاكاة أو استخدام الحدث الصحيح. هذه المشاكل حلتها jQuery Mobile عن طريق استخدام أحداث الفأرة الافتراضية، فعند تحميل صفحة مع jQuery Mobile، سيتأكد المتصفح من دعم الحدث.
</p>

<p>
	وستُدعم الأحداث آنذاك بناءً على أحداث الفأرة الافتراضية، بينما يحدث هذا في الخلفية، يمكنك ربط أحداث الفأرة الافتراضية لتشغيل دوال محدد أو حتى الحصول على بيانات يمكن استخدامها في دوال أخرى.
</p>

<p>
	أحداث الفأرة الافتراضية المتاحة هي:
</p>

<ul>
<li>
		<code>vmouseover</code>
	</li>
	<li>
		<code>vmousedown</code>
	</li>
	<li>
		<code>vmousemove</code>
	</li>
	<li>
		<code>vmouseup</code>
	</li>
	<li>
		<code>vclick</code>
	</li>
	<li>
		<code>vmousecancel</code>
	</li>
</ul>
<p>
	ستجد في الأسفل جزءًا من شيفرة برمجية موجودة في الوسم <code>&lt;head&gt;</code> لاستخدام الأحداث <code>vmousedown</code> و <code>vmousemove</code> و <code>vmouseover</code>.
</p>

<h3 id="-13-vmousedown-vmousemove-vmouseover-">
	المثال 13: مقتطف شيفرة برمجية لأحداث <code>vmousedown</code>، و <code>vmousemove</code> و <code>vmouseover</code>
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_29" style="">
<span class="tag">&lt;script&gt;</span><span class="pln">
$</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"vmousedown"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"p"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">).</span><span class="pln">append</span><span class="pun">(</span><span class="str">'&lt;span style="color:#108040;"&gt;vmousedown...&lt;/span&gt;'</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
</span><span class="pun">});</span><span class="pln">
</span><span class="tag">&lt;/script&gt;</span></pre>

<h3 id="-14-vmousedown-jquery-mobile">
	المثال 14: الحدث <code>vmousedown</code> في jQuery mobile
</h3>

<p>
	بمجرد النقر على التسمية التوضيحية داخل المتصفح، سيُطلَق الحدث <code>vmousedown</code>.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_31" style="">
<span class="dec">&lt;!doctype html&gt;</span><span class="pln">
</span><span class="tag">&lt;html</span><span class="pln"> </span><span class="atn">lang</span><span class="pun">=</span><span class="atv">"en"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">charset</span><span class="pun">=</span><span class="atv">"utf-8"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: vmousedown</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"//code.jquery.com/jquery-1.10.2.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(){</span><span class="pln">
    $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"vmousedown"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"p"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      $</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">).</span><span class="pln">append</span><span class="pun">(</span><span class="str">'&lt;span style="color:#108040;"&gt; vmousedown...&lt;/span&gt;'</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Vmousedown event example</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Touch here to see what happens.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30350" href="https://academy.hsoub.com/uploads/monthly_2019_06/img14.png.a5a08b9af5a9cbeea8788a060e7d4de3.png" rel=""><img alt="img14.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30350" data-unique="2ot0ku9ho" src="https://academy.hsoub.com/uploads/monthly_2019_06/img14.thumb.png.9b95ce1db2ac24f5eb8d61671d5db7f3.png"></a>
</p>

<h3 id="-15-vmouseup-jquery-mobile">
	المثال 15: الحدث <code>vmouseup</code> في jQuery mobile
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_33" style="">
<span class="dec">&lt;!doctype html&gt;</span><span class="pln">
</span><span class="tag">&lt;html</span><span class="pln"> </span><span class="atn">lang</span><span class="pun">=</span><span class="atv">"en"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">charset</span><span class="pun">=</span><span class="atv">"utf-8"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: vmouseup</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"//code.jquery.com/jquery-1.10.2.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
    $</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"vmouseup"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"p"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        $</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">).</span><span class="pln">append</span><span class="pun">(</span><span class="str">'&lt;span style="color:#108040;"&gt; vmouseup when you click i will not until you releases the click button up...&lt;/span&gt;'</span><span class="pun">);</span><span class="pln">
      </span><span class="pun">});</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">VmouseUp event example</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Touch here to see what happens.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30351" href="https://academy.hsoub.com/uploads/monthly_2019_06/img15.png.83a5e7b8018ed4fa78076a9aa31a2819.png" rel=""><img alt="img15.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30351" data-unique="u57n8w14d" src="https://academy.hsoub.com/uploads/monthly_2019_06/img15.thumb.png.9a17dfd6cef4ed4cc1cf6bf86085b452.png"></a>
</p>

<h3 id="-16-vmouseup-jquery-mobile">
	المثال 16: الحدث <code>vmouseup</code> في jQuery mobile
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_35" style="">
<span class="dec">&lt;!doctype html&gt;</span><span class="pln">
</span><span class="tag">&lt;html</span><span class="pln"> </span><span class="atn">lang</span><span class="pun">=</span><span class="atv">"en"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">charset</span><span class="pun">=</span><span class="atv">"utf-8"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: vmouseover</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"//code.jquery.com/jquery-1.10.2.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
    $</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"vmouseover"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"p"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        $</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">).</span><span class="pln">append</span><span class="pun">(</span><span class="str">'&lt;span style="color:#108040;"&gt; vmouseover I will not appear unless you move the pointer over that touche and see...&lt;/span&gt;'</span><span class="pun">);</span><span class="pln">
      </span><span class="pun">});</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">VmouseOver event example</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Touch here to see what happens.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30352" href="https://academy.hsoub.com/uploads/monthly_2019_06/img16.png.22a3c96c5fcc6f015222beef6810711f.png" rel=""><img alt="img16.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30352" data-unique="z343at9h4" src="https://academy.hsoub.com/uploads/monthly_2019_06/img16.thumb.png.731e1014d44f223bedcaca280a5037ce.png"></a>
</p>

<h2 id="-jquery-mobile">
	بناء موقعك الأول المخصص للهواتف باستخدام jQuery mobile
</h2>

<p style="text-align: center;">
	<img alt="img17.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30353" data-unique="y0h4rv0em" src="https://academy.hsoub.com/uploads/monthly_2019_06/img17.png.f1e39acd0977ddff671fc982f0f53c83.png"></p>

<h3 id="-header-">
	الترويسة (Header)
</h3>

<p>
	هذا القسم هو أول شيء يراه المستخدم، وقد يكون أبرز خاصية لموقع الهاتف، ويُعلم هذا المستخدمين بمكانهم، وقد يتضمن شريط بحث، وزر دعوة إلى إجراء (call-to-action)، و/أو شعار.
</p>

<h3 id="-content-">
	قسم المحتوى (Content)
</h3>

<p>
	يحتوي هذا القسم على ما يبدو عليه: أزرار، ونصوص وكل شيء آخر لم يتضمن في الأقسام الأخرى. يضم هذا القسم جوهر موقعك ويعرض كل ما تريد أن يراه المستخدم أو يقضي فيه وقته.
</p>

<h3 id="-footer-">
	تذييل الصفحة (Footer)
</h3>

<p>
	غالبا ما يُتجاهل هذا القسم لكنه منطقة مهمة من موقعك، فيمكن أن يحتوي على كل شيء بدءًا من الروابط الإضافية إلى سطر بسيط لملكية الموقع.
</p>

<p>
	عند تطوير مواقع الويب للهواتف، يُحذَف في العادة هذا القسم ويُستبدل بشريط تنقل أو عنصر ثابت آخر.
</p>

<h3 id="-16-">
	مثال 16: تخطيط أساسي للهواتف
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_37" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: My first mobile site</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      Welcome message.
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<img alt="img18.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30354" data-unique="a5il0v4aw" src="https://academy.hsoub.com/uploads/monthly_2019_06/img18.png.11da849dfbbf4205eef865fcb8cc49c3.png"></p>

<h3 id="-17-">
	مثال 17: إضافة ترويسة وتذييل إلى موقعك المخصص للهواتف
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_39" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: My first mobile site</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      My First Mobile Site
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      Welcome to my first mobile site.
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      Tutors footer!
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<img alt="img19.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30355" data-unique="4lltujcj6" src="https://academy.hsoub.com/uploads/monthly_2019_06/img19.png.c79c5d9bc6cc5310a2496f5682fc66ea.png"></p>

<h3 id="-18-">
	المثال 18: تنسيق المحتوى النصي في الموقع عبر تضمين وسوم التنسيق
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_41" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: My first mobile site</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">My First Mobile Site</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Welcome to my first mobile site.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Try me on all of your mobile devices! You can use any
        </span><span class="tag">&lt;strong&gt;</span><span class="pln">valid HTML</span><span class="tag">&lt;/strong&gt;</span><span class="pln"> on this page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Tutors footer!</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<img alt="img20.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30356" data-unique="ui1g2x7zs" src="https://academy.hsoub.com/uploads/monthly_2019_06/img20.png.d5264473dc3c21774ad05fd523bda739.png"></p>

<h3 id="-19-">
	المثال 19: إضافة صور ذات حجم متغير (متجاوبة) إلى الموقع
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_43" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">My first mobile site</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style&gt;</span><span class="pln">
    img </span><span class="pun">{</span><span class="pln">
      max</span><span class="pun">-</span><span class="pln">width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">100</span><span class="pun">%;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">My First Mobile Site</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Welcome to my first mobile site.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Try me on all of your mobile devices! You can use any</span><span class="tag">&lt;strong&gt;</span><span class="pln">valid HTML</span><span class="tag">&lt;/strong&gt;</span><span class="pln"> on this page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/golden_gate.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Golden Gate Bridge"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Tutor footer!</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<img alt="img21.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30357" data-unique="woqc67cls" src="https://academy.hsoub.com/uploads/monthly_2019_06/img21.png.dc7aa8aa3270a2da65920c4863c7c6b0.png"></p>

<h3 id="-20-vmouseup-">
	المثال 20:الربط مع صفحة ثانية عبر الحدث <code>vmouseup</code>
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_45" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: My first mobile site</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style&gt;</span><span class="pln">
    img </span><span class="pun">{</span><span class="pln">
      max</span><span class="pun">-</span><span class="pln">width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">100</span><span class="pun">%;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"pageone"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">My First Mobile Site</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Welcome to my first mobile site.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Try me on all of your mobile devices! You can use any
        </span><span class="tag">&lt;strong&gt;</span><span class="pln">valid HTML</span><span class="tag">&lt;/strong&gt;</span><span class="pln"> on this page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/golden_gate.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Golden Gate Bridge"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#pagetwo"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to Page 2</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Tutor footer!</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"pagetwo"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">My First Mobile Site</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">You've made it to page 2!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Isn't that awesome?</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#pageone"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go Back to Page 1</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h3&gt;</span><span class="pln">Viva la footer!</span><span class="tag">&lt;/h3&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<img alt="img22.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30358" data-unique="3tjy62z1p" src="https://academy.hsoub.com/uploads/monthly_2019_06/img22.png.2a9ddb91af4187b0f031e03b966ee091.png"></p>

<p style="text-align: center;">
	<img alt="img23.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30362" data-unique="8ye0vjnbi" src="https://academy.hsoub.com/uploads/monthly_2019_06/img23.png.42536cf9b38144ff8c646fd2a7cf74a1.png"></p>

<h3 id="-21-html-">
	مثال 21: ثلاثة صفحات داخلية في ملف HTML واحد
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_3693_47" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials: My first mobile site</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;style&gt;</span><span class="pln">
    img </span><span class="pun">{</span><span class="pln">
      max</span><span class="pun">-</span><span class="pln">width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">100</span><span class="pun">%;</span><span class="pln">
    </span><span class="pun">}</span><span class="pln">
  </span><span class="tag">&lt;/style&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- begin first page --&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">First page!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Welcome to my first mobile site.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Try me on all of your mobile devices! You can use any</span><span class="tag">&lt;strong&gt;</span><span class="pln">valid HTML</span><span class="tag">&lt;/strong&gt;</span><span class="pln"> on this page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/golden_gate.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Golden Gate Bridge"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#page2"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to Second Page</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- end first page --&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- Begin second page --&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page2"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Second page!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Welcome to my first mobile site.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Try me on all of your mobile devices! You can use any</span><span class="tag">&lt;strong&gt;</span><span class="pln">valid HTML</span><span class="tag">&lt;/strong&gt;</span><span class="pln"> on this page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/cable_car2.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Cable Car"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#page3"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to Third Page</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- end second page --&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- begin third page --&gt;</span><span class="pln">
  </span><span class="tag">&lt;section</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"page3"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">jQuery Mobile</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Third page!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Welcome to my first mobile site.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Try me on all of your mobile devices! You can use any</span><span class="tag">&lt;strong&gt;</span><span class="pln">valid HTML</span><span class="tag">&lt;/strong&gt;</span><span class="pln"> on this page</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/alcatraz.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"alcatraz"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
      </span><span class="tag">&lt;p</span><span class="pln"> </span><span class="atn">style</span><span class="pun">=</span><span class="atv">"</span><span class="pln">text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="atv">"</span><span class="tag">&gt;</span><span class="pln">Powered by jQuery Mobile</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#page1"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go back to First Page</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;footer</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/footer&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
  </span><span class="com">&lt;!-- end third page --&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30359" href="https://academy.hsoub.com/uploads/monthly_2019_06/img24.png.cb4ce88cf101bca32bb49eeae857f5b4.png" rel=""><img alt="img24.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30359" data-unique="s3cwgwq52" src="https://academy.hsoub.com/uploads/monthly_2019_06/img24.thumb.png.68ce4bc36f00106f12bdf332c97a0a14.png"></a>
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30360" href="https://academy.hsoub.com/uploads/monthly_2019_06/img25.png.17a7353beb81d7f5c189ab00cbc409a5.png" rel=""><img alt="img25.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30360" data-unique="8g568mx0k" src="https://academy.hsoub.com/uploads/monthly_2019_06/img25.thumb.png.954e02c8bf510cac493b56f66fba6e09.png"></a>
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="30361" href="https://academy.hsoub.com/uploads/monthly_2019_06/img26.png.6c161e845c165c23b572d8e4f2e18fef.png" rel=""><img alt="img26.png" class="ipsImage ipsImage_thumbnailed" data-fileid="30361" data-unique="5lwgd12m7" src="https://academy.hsoub.com/uploads/monthly_2019_06/img26.thumb.png.2ec574aeab7532afaeee2cc6354cc2ef.png"></a>
</p>

<p>
	ترجمة -وبتصرّف- للمقال <a href="https://www.script-tutorials.com/jquery-mobile-lesson-3/" rel="external nofollow">jQuery Mobile Lesson 3</a> لصاحبه Andrew
</p>

<h2>
	اقرأ أيضًا
</h2>

<ul>
<li>
		الدرس التالي: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D8%B1%D8%A8%D8%B7-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AE%D8%A7%D8%B1%D8%AC%D9%8A%D8%A9-%D9%88%D8%AA%D9%86%D8%B8%D9%8A%D9%85-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D8%A8%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A9-%D9%88%D8%A8%D9%86%D8%A7%D8%A1-%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%B7%D9%8A-r703/" rel="">ربط صفحات خارجية وتنظيم المحتوى بنظام الشبكة وبناء محتوى قابل للطي</a>
	</li>
	<li>
		الدرس السابق: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%86%D9%8A-%D8%A7%D9%84%D8%AA%D8%B6%D9%85%D9%8A%D9%86%D8%8C-%D8%AA%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9%D8%8C-%D8%A7%D9%84%D8%AA%D9%86%D9%82%D9%84-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-%D8%A7%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-r633/" rel=""> التضمين، تهيئة الصفحة، التنقل بين الصفحات وأحداث التحميل</a>
	</li>
</ul>
]]></description><guid isPermaLink="false">702</guid><pubDate>Tue, 09 Jul 2019 18:02:00 +0000</pubDate></item><item><title>&#x627;&#x644;&#x62F;&#x631;&#x633; &#x627;&#x644;&#x62B;&#x627;&#x646;&#x64A;: &#x627;&#x644;&#x62A;&#x636;&#x645;&#x64A;&#x646;&#x60C; &#x62A;&#x647;&#x64A;&#x626;&#x629; &#x627;&#x644;&#x635;&#x641;&#x62D;&#x629;&#x60C; &#x627;&#x644;&#x62A;&#x646;&#x642;&#x644; &#x628;&#x64A;&#x646; &#x627;&#x644;&#x635;&#x641;&#x62D;&#x627;&#x62A; &#x648;&#x623;&#x62D;&#x62F;&#x627;&#x62B; &#x627;&#x644;&#x62A;&#x62D;&#x645;&#x64A;&#x644;</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%86%D9%8A-%D8%A7%D9%84%D8%AA%D8%B6%D9%85%D9%8A%D9%86%D8%8C-%D8%AA%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9%D8%8C-%D8%A7%D9%84%D8%AA%D9%86%D9%82%D9%84-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-%D8%A7%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-r633/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2019_06/5d109d2621883_.jpg.b835cefc6a93b0557000336bc3be23fa.jpg" /></p>

<p>
	نواصل اليوم دروسنا حول jQuery Mobile، في هذا الدرس، سنطّلع على أمثلة تهيئة، وإنشاء صفحات، ومعاجلات الحدث (event handlers)، وتنقلات الصفحة وغيرها.
</p>

<p>
	هذا الدرس جزء من <a href="https://academy.hsoub.com/tags/jquery%20mobile/" rel="">سلسلة دروس تشرح jQuery Mobile</a>:
</p>

<ul>
<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%A3%D9%88%D9%84-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9%D8%8C-%D8%A8%D9%86%D8%A7%D8%A1-%D9%88%D8%AA%D9%82%D8%AF%D9%8A%D9%85-%D9%85%D8%AD%D8%AA%D9%88%D9%89-r629/" rel="">الدرس الأول: البداية، بناء وتقديم محتوى</a>
	</li>
	<li>
		الدرس الثاني: التضمين، تهيئة الصفحة، التنقل بين الصفحات وأحداث التحميل
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%84%D8%AB-%D8%A7%D8%AA%D8%AC%D8%A7%D9%87-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB%D9%87%D8%A7-r702/" rel="">الدرس الثالث: اتجاه الصفحة وأحداثها</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D8%B1%D8%A8%D8%B7-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AE%D8%A7%D8%B1%D8%AC%D9%8A%D8%A9-%D9%88%D8%AA%D9%86%D8%B8%D9%8A%D9%85-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D8%A8%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A9-%D9%88%D8%A8%D9%86%D8%A7%D8%A1-%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%B7%D9%8A-r703/" rel="">الدرس الرابع: ربط صفحات خارجية وتنظيم المحتوى بنظام الشبكة وبناء محتوى قابل للطي</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AE%D8%A7%D9%85%D8%B3-%D8%A7%D9%84%D8%A3%D9%8A%D9%82%D9%88%D9%86%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%B2%D8%B1%D8%A7%D8%B1-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D8%A7%D8%AA-%D9%85%D8%AE%D8%B5%D8%B5%D8%A9-r717/" rel="">الدرس الخامس: الأيقونات والأزرار وإنشاء تنسيقات مخصصة</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B3%D8%A7%D8%AF%D8%B3-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%A7%D9%84%D9%82%D9%88%D8%A7%D8%A6%D9%85-%D9%88%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D9%87%D8%A7-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D9%86%D9%85%D8%A7%D8%B0%D8%AC-%D8%A7%D9%84%D8%A8%D8%AD%D8%AB-%D9%88%D8%AA%D8%B3%D8%AC%D9%8A%D9%84-%D8%A7%D9%84%D8%AF%D8%AE%D9%88%D9%84-r718/" rel="">الدرس السادس: إنشاء القوائم وتنسيقها وإنشاء نماذج البحث وتسجيل الدخول</a>
	</li>
</ul>
<h2>
	<a id="_JQUERY_MOBILE___2" rel=""></a>تضمين jQuery Mobile في موقعك
</h2>

<p>
	من السهل إضافة إطار jQuery إلى موقعك كسهولة إضافة أي ملف جافا سكربت خارجي.
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_2931_7" style="">
<span class="pun">&lt;!</span><span class="pln">DOCTYPE html</span><span class="pun">&gt;</span><span class="pln">
</span><span class="pun">&lt;</span><span class="pln">html</span><span class="pun">&gt;</span><span class="pln">
</span><span class="pun">&lt;</span><span class="pln">head</span><span class="pun">&gt;</span><span class="pln">
  </span><span class="pun">&lt;</span><span class="pln">title</span><span class="pun">&gt;</span><span class="pln">jQuery </span><span class="typ">Mobile</span><span class="pln"> on </span><span class="typ">Script</span><span class="pln"> </span><span class="typ">Tutorials</span><span class="pun">&lt;/</span><span class="pln">title</span><span class="pun">&gt;</span><span class="pln">
  </span><span class="pun">&lt;</span><span class="pln">meta name</span><span class="pun">=</span><span class="str">"viewport"</span><span class="pln"> content</span><span class="pun">=</span><span class="str">"width=device-width, initial-scale=1"</span><span class="pun">&gt;</span><span class="pln">
  </span><span class="pun">&lt;</span><span class="pln">link rel</span><span class="pun">=</span><span class="str">"stylesheet"</span><span class="pln"> href</span><span class="pun">=</span><span class="str">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="pun">/&gt;</span><span class="pln">
  </span><span class="pun">&lt;</span><span class="pln">script src</span><span class="pun">=</span><span class="str">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="pun">&gt;&lt;/</span><span class="pln">script</span><span class="pun">&gt;</span><span class="pln">
  </span><span class="pun">&lt;</span><span class="pln">script src</span><span class="pun">=</span><span class="str">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="pun">&gt;</span><span class="pln"> </span><span class="pun">&lt;/</span><span class="pln">script</span><span class="pun">&gt;</span><span class="pln">
</span><span class="pun">&lt;/</span><span class="pln">head</span><span class="pun">&gt;</span><span class="pln">
</span><span class="pun">&lt;</span><span class="pln">body</span><span class="pun">&gt;</span><span class="pln">
  </span><span class="pun">&lt;</span><span class="pln">p</span><span class="pun">&gt;</span><span class="typ">Site</span><span class="pln"> contents will be here</span><span class="pun">&lt;/</span><span class="pln">p</span><span class="pun">&gt;</span><span class="pln">
</span><span class="pun">&lt;/</span><span class="pln">body</span><span class="pun">&gt;</span><span class="pln">
</span><span class="pun">&lt;/</span><span class="pln">html</span><span class="pun">&gt;</span></pre>

<h2>
	<a id="____JQUERY_MOBILE_19" rel=""></a>إنشاء صفحة بسيطة باستخدام jQuery Mobile
</h2>

<p>
	تحدثنا بالفعل على الشيفرة البرمجية لبناء هيكل بسيط لموقع ويب للهواتف، لكننا لا يشبه مواقع الويب للهواتف، لننشئ إذا موقع يتكون من صفحة واحدة وزر حتى نفهم طريقة عمل jQuery Mobile.<br>
	يعين jQuery Mobile الصفحات باستخدام الخاصية data-role. في ما وراء الكواليس، يحدد jQuery Mobile العناصر المبنية على هذه الخاصية ويعززها بشكل تدريجي بإضافة: أصناف CSS، أي ترميز لازم، إدارة للأحداث.<br>
	تبدو هذه وكأنها طريقة معقدة للتعامل مع الأشياء، لماذا لا يكون لدينا صفحات عادية مرتبطة كالعادة؟ لكننا في هذا الدرس سنغطي عدة مميزات هامة لـ jQuery Mobile:
</p>

<h3>
	تنقلات الصفحة
</h3>

<p>
	من خلال التعامل مع الصفحات كمناطق محتوى منفصلة في ملف واحد، يمكن لـ jQuery Mobile إنشاء تنقلات سلسة للصفحات، مما يؤدي إلى مظهر مشابه للتطبيقات.
</p>

<h3>
	إدارة التصفح
</h3>

<p>
	يمكن لـ jQuery Mobile التعامل تلقائيًا مع تصفح الصفحة عن طريق توفير مميزات مثل أزرار العودة والربط العميق.
</p>

<h3>
	الكفاءة
</h3>

<p>
	لن يحتاج المتصفح إلى الوصول إلى الشبكة مرارًا وتكرارًا بما أن جميع الموارد موجودة في ملف واحد، كما هو الحال مع الملفات الفردية الأصغر حجمًا. سيساعد هذا على تخفيف بطء التطبيق واستنزاف بطارية الهاتف، لكن من جهة أخرى، سيكون وقت تحميل أطول لصفحات HTML الكبيرة التي تحتوي على العديد من العروض (views) الفردية لصفحة jQuery Mobile.<br>
	ومع ذلك، بمجرد تحميل الملف، فإن السلوك سيصبح أسرع ولن يعتمد بالضرورة على الوصول إلى الشبكة.
</p>

<p style="text-align: center;">
	<img alt="img21.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27279" data-unique="zyda39vkh" src="https://academy.hsoub.com/uploads/monthly_2018_03/img21.png.cf82686a2d1454ba496ce42c141cea54.png"></p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_6" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
</span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorial: jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
</span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
</span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;</span><span class="pln"> </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
</span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Single Page Site</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;p&gt;</span><span class="pln">Look at the button!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
</span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"https://www.script-tutorials.com"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">I am a button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
</span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<h3>
	<a id="______jQuery_mobile_54" rel=""></a>المثال 1: إنشاء صفحة بسيطة باستخدام jQuery mobile
</h3>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="27280" href="https://academy.hsoub.com/uploads/monthly_2018_03/img22.png.120caa2fbb9788432d71b8a684f49b23.png" rel=""><img alt="img22.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27280" data-unique="sydfeyk3n" src="https://academy.hsoub.com/uploads/monthly_2018_03/img22.thumb.png.f2abe1596e98dbad58abf545f4bf75d9.png"></a>
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_8" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
</span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorial: jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
</span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
</span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;</span><span class="pln"> </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
</span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Single Page Site</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;p&gt;</span><span class="pln">Look at the button!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
</span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"https://www.script-tutorials.com"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">I am a button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
</span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p>
	صفحة بسيطة مع زر واحد مرتبط إلى صفحة الحوار (dialog page)
</p>

<h3>
	المثال 2: إنشاء صفحة بسيطة باستخدام jQuery Mobile مع زر يعمل وصفحة ثانية
</h3>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="27281" href="https://academy.hsoub.com/uploads/monthly_2018_03/img23.png.a7de7a120b3230d499e126065acb6aa1.png" rel=""><img alt="img23.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27281" data-unique="60q8vrizt" src="https://academy.hsoub.com/uploads/monthly_2018_03/img23.thumb.png.6e20e75d4860a0ff89c7b4af08a3c784.png"></a>
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_10" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;</span><span class="pln"> </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Single Page Site</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Look at the button!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#dpop"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-rel</span><span class="pun">=</span><span class="atv">"dialog"</span><span class="tag">&gt;</span><span class="pln">I am a button</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"dpop"</span><span class="pln"> </span><span class="atn">data-theme</span><span class="pun">=</span><span class="atv">"d"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Clicked!</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">clicked content!</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#"</span><span class="pln"> </span><span class="atn">data-rel</span><span class="pun">=</span><span class="atv">"back"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go back</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<h2>
	<a id="_22___JQUERY_MOBILE_112" rel=""></a>القسم 2.2: إطار عمل jQuery Mobile
</h2>

<h3>
	<a id="___113" rel=""></a>حدث تهيئة الهاتف
</h3>

<p>
	يستخدم إطار عمل jQuery دالة ‎<code>$(document).ready()</code>‎ للتحايل على مشاكل التلاعب والتحميل عن طريق إعطائك صلاحية الوصول إلى دوالك في أقرب وقت. في حين أن هذا الأمر رائع للمواقع المتكونة من صفحة واحدة، لكنه سيصبح مشكلة صغيرة لإطار عمل jQuery Mobile.<br>
	يستخدم jQuery Mobile طلبيات AJAX لتحميل محتويات كل صفحة بدلا من إعادة تحميل بنية DOM كاملة. تعمل دالة ‎<code>$(document).ready()</code>‎ مرة واحدة عند تحميل الصفحة، وليس عن طريق نداء AJAX، في jQuery Mobile، لا تعمل دالة ‎<code>$(document).ready()</code>‎ مرة واحدة في الصفحة، لكن مرة في الموقع ما لم يطلب المستخدم تحديث الصفحة، وهذا يعني أن بعض الإعدادات الافتراضية التي يجب تعيينها عن طريق jQuery Mobile لا يمكن تعيينها في دالة ‎<code>$(document).ready()</code>‎ لأنها لن تُطبّق في الصفحات الأخرى المتضمنة عن طريق AJAX.<br>
	الحل هو تعيين وتغيير هذه الافتراضات باستخدام حدث mobileinit لأنه يعمل قبل دالة ‎<code>$(document).ready()</code>‎.<br>
	يجب عليك تضمين إطار عمل jQuery لاستخدام حدث<code>mobileinit</code> ومن ثم إما عن طريق تضمين مباشر أو تضمين خارجي لملف جافا سكربت يحتوي على حدث الربط لحدث <code>mobileinit</code> وفي النهاية تضمين jQuery Mobile.
</p>

<h3>
	مثال 3: تضمين jQuery، سكربت mobileinit مضمن و jQuery Mobile
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_12" style="">
<span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/javascript"</span><span class="tag">&gt;</span><span class="pln">
$</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"mobileinit"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  $</span><span class="pun">.</span><span class="pln">extend</span><span class="pun">(</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">mobile </span><span class="pun">,</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    pageLoadErrorMessage</span><span class="pun">:</span><span class="pln"> </span><span class="str">'Either the page cannot be found or it cannot be loaded.'</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
</span><span class="pun">});</span><span class="pln">
</span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span></pre>

<h2>
	<a id="___JQUERY_MOBILE_130" rel=""></a>تهيئة صفحة في jQuery Mobile
</h2>

<p>
	يجب عليك اتباع نهج أقل حيوية (dynamic) وأكثر تخطيط لاستخدام حدث <code>pageinit</code> على صفحتك، فتوجد عدة طرق لإرفاق حدث <code>pageinit</code> في شيفرتك البرمجية ففي نسخ jQuery Mobile قبل 1.1، ستستخدم jQuery 1.6.4 وهذا يعني أنه يجب عليك استخدام دالة ‎<code>.bind()</code>‎ بدلا من دالة ‎<code>.on()</code>‎،وعند استخدام الإصدار 1.1 وما بعده من jQuery Mobile ستستخدم دالة ‎<code>.on()</code>‎ لربط الحدث.<br>
	دالة ‎<code>.on()</code>‎ الموجودة في jQuery 1.7 هي توحيد لعدة دوال تُستخدم في ربط الأحداث، فبدلا من القلق على استخدام ‎<code>.bind()</code>‎<code> أو </code>‎<code>.live()</code>‎ أو ‎<code>.delegate()</code>‎ يمكنك الآن استخدام دالة ‎<code>.on()</code>‎ لإيجاد الأحداث، يمكنك معرفة المزيد من المعومات حول هذه الدالة عن طريق زيارة <a href="https://wiki.hsoub.com/jQuery/on" rel="external">التوثيق</a>.<br>
	إذا كنت تستخدم إصدار jQuery Mobile قبل 1.1، تجنب استخدام التابع ‎<code>.on()</code>‎، ويجب عليك بدلا من ذلك استخدام دالة ‎<code>.delegate()</code>‎ أو ‎<code>.live()</code>‎.
</p>

<h3>
	المثال 4: استخدام حدث سكربت pageinit و mobileinit بدلا من ‎$(document).ready()‎
</h3>

<p style="text-align: center;">
	<img alt="img4.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27283" data-unique="104nrnpmn" src="https://academy.hsoub.com/uploads/monthly_2018_03/img4.png.20ae62923863d313dd9d40f1c05ea148.png"></p>

<p>
	ستظهر لك الصورة في الأعلى إذا كانت صفحة multipage_two.html غير متوفرة في رابط المباشر للمجلد.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_15" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/javascript"</span><span class="tag">&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"mobileinit"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $</span><span class="pun">.</span><span class="pln">extend</span><span class="pun">(</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">mobile </span><span class="pun">,</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      pageLoadErrorMessage</span><span class="pun">:</span><span class="pln"> </span><span class="str">'Either the page cannot be found or it cannot be loaded.'</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="com">//THE TIED EVENT OF THE MULTIPAGE_TWO.HTML BEGINS</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pageinit"</span><span class="pun">,</span><span class="str">"#pageinit2"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"pageinit is bound!"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="com">//THE TIED EVENT OF THE MULTIPAGE_TWO.HTML ENDS</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pageinit event example</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">The button below will use AJAX to load another page and trigger a bound event</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"multipage_two.html"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Click to open a new page</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p>
	السكربت أدناه يحتوي على حدث مرتبط في السكربت أعلاه لـ pageinit.html، وهذا سيُطلق (Trigger) تحميل الصفحة مباشرة من ذلك الملف.
</p>

<p style="text-align: center;">
	<img alt="img5.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27273" data-unique="v0wzlhd6z" src="https://academy.hsoub.com/uploads/monthly_2018_03/img5.png.a597f19116082e3394753f13eb68f9a8.png"></p>

<p>
	هذه multipage_two.html
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_17" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: jQuery mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.css"</span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0-rc.1/jquery.mobile-1.1.0-rc.1.min.js"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"pageinit2"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pageinit event example </span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Fantastic! I am a new page and was loaded through AJAX.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"pageinit.html"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">data-rel</span><span class="pun">=</span><span class="atv">"back"</span><span class="tag">&gt;</span><span class="pln">Amazing, now take me back</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span><span class="pln">
</span><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"https://www.script-tutorials.com/demos/511/img6.png"</span><span class="pln"> </span><span class="atn">data-lazy-src</span><span class="pun">=</span><span class="atv">"https://www.script-tutorials.com/demos/511/img6.png"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">" lazyloaded"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-Tutorials jQuery Mobile</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.7.1.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/javascript"</span><span class="tag">&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"mobileinit"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    $</span><span class="pun">.</span><span class="pln">extend</span><span class="pun">(</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">mobile </span><span class="pun">,</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      pageLoadErrorMessage</span><span class="pun">:</span><span class="pln"> </span><span class="str">'Either the page cannot be found or it cannot be loaded.'</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pageinit"</span><span class="pun">,</span><span class="str">"#pageinit2"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"pageinit is bound!"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pageinit event example</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">The button below will use AJAX to load another page and trigger a bound event</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"multipage_two.html"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Click to open a new page</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p>
	هذه هي الصفحة multipage_two.html:
</p>

<p>
	<img alt="img6.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27274" data-unique="3grleqxk2" src="https://academy.hsoub.com/uploads/monthly_2018_03/img6.png.390f976d164eb1ceef007c95243b905d.png"></p>

<h2>
	التنقل بين الصفحات
</h2>

<p>
	تتكون العملية من صفحتين: صفحة "من” وصفحة "إلى”، هذه التنقلات تغيّر الصفحة من الصفحة الحالية (fromPage) إلى صفحة جديدة (toPage).
</p>

<h3>
	إخفاء الصفحة وأحداث الظهور
</h3>

<p>
	يفرق jQuery Mobile بين أحداث صفحة التحويل وأحداث إظهار وإخفاء الصفحة بسبب طبيعته غير المتزامنة، تحدث أحداث تحميل الصفحة عند تحميل الملف إلى المتصفح بطرية متزامنة، وعند تحميل الصفحة بهذه الطريقة، سيصبح التابع <code>jQuery(document).ready()</code>‎ متاحًا للاستعمال وسيشغل jQuery Mobile أحداث التهيئة الأخرى كذلك.<br>
	كما رأينا، قد يحتوي ملف صفحة HTML الواحدة على عدة عروض (views) لـ jQuery Mobile، ويمكن للمستخدم الانتقال بين مناظر هذه الصفحة عدة مرات. هذه الصفحة لا تطلق أحداث تحميل الصفحة، وبدلا من ذلك، يوفر jQuery Mobile مجموعة من الأحداث التي تعمل في كل مرة يحدث فيها انتقال للصفحة، وكل واحدة من هذه الأحداث توفر مرجع إلى الحدث وكائنات واجهة المستخدم:
</p>

<ul>
<li>
		<strong>pagebeforehide: </strong>ينطلق هذا الحدث في الصفحة التي يُنتقل منها قبل بدء عملية الانتقال. ستكون <code>ui.nextPage</code> الصفحة التي يُنتقل إليها أو كائن jQuery فارغ إذا لم يكن هناك أي صفحة.
	</li>
	<li>
		<strong>Pagebeforeshow: </strong>ينطلق هذا الحدث في الصفحة التي يُنتقل إليها قبل بدء عملية الانتقال. ستكون <code>ui.prevPage</code> الصفحة التي يُنتقل منها أو كائن jQuery فارغ إذا لم يكن هناك أي صفحة.
	</li>
	<li>
		<strong>Pagehide: </strong>ينطلق هذا الحدث في الصفحة التي يُنتقل منها بعد انتهاء عملية الانتقال. سيكون <code>ui.nextPage</code> كائن jQuery للصفحة التي يُنتقل إليها أو كائن jQuery فارغ إذا لم يكن هناك أي صفحة.
	</li>
	<li>
		<strong>Pageshow: </strong>ينطلق هذا الحدث في الصفحة التي يُنتقل إليها بعد انتهاء عملية الانتقال. سيحتوي <code>ui.prevPage</code> كائن jQuery للصفحة التي يُنتقل منها أو كائن jQuery فارغ إذا لم يكن هناك أي صفحة.
	</li>
</ul>
<p>
	توفر هذه الأحداث الأربعة نظير لنداء <code>jQuery(document).ready()</code>‎ لمناظر صفحة التطبيق.<br>
	لاستخدام هذه الأحداث، ارفق مستمع الحدث (event listeners) إلى الصفحة المناسبة باستخدام <code>jQuery.bind()</code>‎<code>، أو jQuery.live()</code>‎،  أو <code>jQuery.delegate()</code>‎.<br><code>jQuery.bind()</code>‎<code>، و jQuery.live()</code>‎، و <code>jQuery.delegate()</code>‎ هي توابع يملكها jQuery لربط المعالجات (handlers) إلى مستمعي الأحداث. للمزيد من التفاصيل، راجع <a href="https://wiki.hsoub.com/jQuery/Events" rel="external">توثيق jQuery</a>، وهنا نستخدم <code>jQuery.bind()</code>‎:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_21" style="">
<span class="tag">&lt;script&gt;</span><span class="pln">
$</span><span class="pun">(</span><span class="str">"#page1"</span><span class="pun">).</span><span class="pln">bind</span><span class="pun">(</span><span class="str">"pagehide"</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln"> ui</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  </span><span class="kwd">var</span><span class="pln"> strAlert </span><span class="pun">=</span><span class="pln"> </span><span class="str">""</span><span class="pun">;</span><span class="pln">
  </span><span class="kwd">for</span><span class="pln"> </span><span class="pun">(</span><span class="kwd">var</span><span class="pln"> thing in event</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    strAlert </span><span class="pun">+=</span><span class="pln"> thing </span><span class="pun">+</span><span class="pln"> </span><span class="str">" : "</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> event</span><span class="pun">[</span><span class="pln">thing</span><span class="pun">]</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> </span><span class="str">"\n"</span><span class="pun">;</span><span class="pln">
  </span><span class="pun">}</span><span class="pln">
  alert</span><span class="pun">(</span><span class="pln">strAlert</span><span class="pun">);</span><span class="pln">
</span><span class="pun">});</span><span class="pln">
</span><span class="tag">&lt;/script&gt;</span></pre>

<p>
	بالنسبة للصفحات المتكونة من نفس الملف، سيكون <code>jQuery.bind()</code>‎ كافيا.<br>
	بالنسبة للصفحات التي ستُحمّل بشكل غير متزامن عن طريق jQuery Mobile، استخدم <code>jQuery.delegate()</code>‎ أو <code>jQuery.live()</code>‎.
</p>

<h3>
	<a id="_4__pagebeforehide_260" rel=""></a>المثال 5: حدث pagebeforehide
</h3>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="27275" href="https://academy.hsoub.com/uploads/monthly_2018_03/img7.png.97c8dab06c775cda43051236fc88ff42.png" rel=""><img alt="img7.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27275" data-unique="2ynjjsnt0" src="https://academy.hsoub.com/uploads/monthly_2018_03/img7.thumb.png.88a2147b6ac7611932e54783f785860b.png"></a>
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_23" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: pagebeforehide Event</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.11.3.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pagebeforehide"</span><span class="pun">,</span><span class="str">"#pagetwo"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"pagebeforehide event fired - pagetwo is about to be hidden"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"pageone"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pagebeforehide Event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"main"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Page One</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#pagetwo"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to Page Two</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Header</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"pagetwo"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pagebeforehide Event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"main"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Page Two</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#pageone"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to Page One</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<h3>
	<a id="_5__pagebeforeshow_303" rel=""></a>المثال 6: حدث pagebeforeshow
</h3>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="27276" href="https://academy.hsoub.com/uploads/monthly_2018_03/img8.png.5834872a59cba12cb323d9ef9a6d4e4d.png" rel=""><img alt="img8.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27276" data-unique="zi5yziyze" src="https://academy.hsoub.com/uploads/monthly_2018_03/img8.thumb.png.e844a05b41122c95c9d22c68286ae9e5.png"></a>
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="27277" href="https://academy.hsoub.com/uploads/monthly_2018_03/img9.png.55f417b246ecac3d3aff25d08f129482.png" rel=""><img alt="img9.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27277" data-unique="qqejsury3" src="https://academy.hsoub.com/uploads/monthly_2018_03/img9.thumb.png.09c50ab35b1868630c234abc811099a6.png"></a>
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_25" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: pagebeforehide Event</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.11.3.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pagebeforeshow"</span><span class="pun">,</span><span class="str">"#pagetwo"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln"> </span><span class="com">// When entering pagetwo</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"pagetwo is about to be shown"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pageshow"</span><span class="pun">,</span><span class="str">"#pagetwo"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln"> </span><span class="com">// When entering pagetwo</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"pagetwo is now shown"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pagebeforehide"</span><span class="pun">,</span><span class="str">"#pagetwo"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln"> </span><span class="com">// When leaving pagetwo</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"pagetwo is about to be hidden"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pagehide"</span><span class="pun">,</span><span class="str">"#pagetwo"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln"> </span><span class="com">// When leaving pagetwo</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"pagetwo is now hidden"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"pageone"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pagebeforehide Event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"main"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Page One</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#pagetwo"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to Page Two</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer 1</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"pagetwo"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">pagebeforehide Event</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"main"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Page Two</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#pageone"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">Go to Page One</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer 2</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<h2>
	<a id="__JQUERY_MOBILE_357" rel=""></a>أحداث تحميل JQUERY MOBILE
</h2>

<h3>
	<a id="_____358" rel=""></a>أحداث تحميل الصفحة للصفحات الخارجية.
</h3>

<p>
	كلما تُحمّل صفحة خارجية في DOM، سيعمل حدثين، الأول هو <code>pagecontainerbeforeload</code> والثاني إما <code>pagecontainerload</code> (نجاح) أو <code>pagecontainerloadfailed</code> (فشل).<br>
	ويرد في الجدول أدناه شرح لهذه الأحداث:
</p>

<center>
	<table border="1"><tbody>
<tr>
<td style="background-color: rgb(146, 14, 27); padding: 5px 10px; text-align: center; color: white;">
					الحدث
				</td>
				<td style="background-color: rgb(146, 14, 27); padding: 5px 10px; text-align: center; color: white;">
					الوصف
				</td>
			</tr>
<tr>
<td style="padding: 5px 10px; text-align: center;">
					pagecontainerbeforeload
				</td>
				<td style="padding: 5px 10px; text-align: center;">
					تشتغل قبل أي طلب لتحميل صفحة.
				</td>
			</tr>
<tr>
<td style="padding: 5px 10px; text-align: center;">
					pagecontainerload
				</td>
				<td style="padding: 5px 10px; text-align: center;">
					تشتغل بعد تحميل الصفحة بنجاح وتُدرج في DOM.
				</td>
			</tr>
<tr>
<td style="padding: 5px 10px; text-align: center;">
					pagecontainerload
				</td>
				<td style="padding: 5px 10px; text-align: center;">
					تشتغل إذا فشل طلب تحميل الصفحة، افتراضيًا ستُظهر رسالة “Error Loading Page”.
				</td>
			</tr>
</tbody></table>
</center>

<p>
	<br>
	تشتغل إذا فشل طلب تحميل الصفحة، افتراضيًا ستُظهر رسالة “Error Loading Page”.<br>
	ستجد في الأسفل الشيفرة البرمجية لملف main.html
</p>

<h3>
	<a id="_6____377" rel=""></a>المثال 7: حدث تحميل الصفحة
</h3>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="27278" href="https://academy.hsoub.com/uploads/monthly_2018_03/img10.png.06ae13fbad7fa62ace93dc45bff1c0bb.png" rel=""><img alt="img10.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27278" data-unique="huwrwqr0y" src="https://academy.hsoub.com/uploads/monthly_2018_03/img10.thumb.png.2904fe544b9b926849bdc393f5e7b64a.png"></a>
</p>

<p>
	عند وجود زر لتحميل الصفحة الخارجية، ستظهر هذه الصورة في المتصفح
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="27282" href="https://academy.hsoub.com/uploads/monthly_2018_03/img11.png.7cc50db759d7af879da58b01d59f928e.png" rel=""><img alt="img11.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27282" data-unique="zyldw6ep9" src="https://academy.hsoub.com/uploads/monthly_2018_03/img11.thumb.png.e57a0c47c3900bb4066c288e9d34ff4d.png"></a>
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_7571_27" style="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Script-tutorials: pagebeforehide Event</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/jquery-1.11.3.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script&gt;</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pagecontainerload"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln">data</span><span class="pun">){</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"pagecontainerload event fired!\nURL: "</span><span class="pln"> </span><span class="pun">+</span><span class="pln"> data</span><span class="pun">.</span><span class="pln">url</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  $</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">on</span><span class="pun">(</span><span class="str">"pagecontainerloadfailed"</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(</span><span class="pln">event</span><span class="pun">,</span><span class="pln">data</span><span class="pun">){</span><span class="pln">
    alert</span><span class="pun">(</span><span class="str">"Sorry, requested page does not exist."</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="tag">&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"page"</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"pageone"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"header"</span><span class="tag">&gt;&lt;h1&gt;</span><span class="pln">Load Events</span><span class="tag">&lt;/h1&gt;&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"main"</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"ui-content"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;p&gt;</span><span class="pln">Content data loaded or faile to load</span><span class="tag">&lt;/p&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"pageexist.html"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">External Page Exist</span><span class="tag">&lt;/a&gt;</span><span class="pln">
      </span><span class="tag">&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"page_notexist.html"</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"button"</span><span class="tag">&gt;</span><span class="pln">No Page Exist</span><span class="tag">&lt;/a&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">data-role</span><span class="pun">=</span><span class="atv">"footer"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;h1&gt;</span><span class="pln">Footer</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p>
	ترجمة -وبتصرّف- للمقال <a href="https://www.script-tutorials.com/jquery-mobile-lesson-2/" rel="external nofollow">jQuery Mobile Lesson 2</a> لصاحبه Andrew
</p>

<h2>
	اقرأ أيضًا
</h2>

<ul>
<li>
		الدرس التالي: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%84%D8%AB-%D8%A7%D8%AA%D8%AC%D8%A7%D9%87-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB%D9%87%D8%A7-r702/" rel="">اتجاه الصفحة وأحداثها</a>
	</li>
	<li>
		الدرس السابق: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%A3%D9%88%D9%84-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9%D8%8C-%D8%A8%D9%86%D8%A7%D8%A1-%D9%88%D8%AA%D9%82%D8%AF%D9%8A%D9%85-%D9%85%D8%AD%D8%AA%D9%88%D9%89-r629/" rel="">البداية، بناء وتقديم محتوى</a>
	</li>
</ul>
]]></description><guid isPermaLink="false">633</guid><pubDate>Tue, 02 Jul 2019 08:07:00 +0000</pubDate></item><item><title>&#x627;&#x644;&#x62F;&#x631;&#x633; &#x627;&#x644;&#x623;&#x648;&#x644;: &#x627;&#x644;&#x628;&#x62F;&#x627;&#x64A;&#x629;&#x60C; &#x628;&#x646;&#x627;&#x621; &#x648;&#x62A;&#x642;&#x62F;&#x64A;&#x645; &#x645;&#x62D;&#x62A;&#x648;&#x649;</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%A3%D9%88%D9%84-%D8%A7%D9%84%D8%A8%D8%AF%D8%A7%D9%8A%D8%A9%D8%8C-%D8%A8%D9%86%D8%A7%D8%A1-%D9%88%D8%AA%D9%82%D8%AF%D9%8A%D9%85-%D9%85%D8%AD%D8%AA%D9%88%D9%89-r629/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2019_06/5d1099e8dba3e_.jpg.ee8692a6a737e058a03674af06346654.jpg" /></p>
<p>
	في هذه السلسلة من الدروس، سنتحدث عن مكتبة jQuery Mobile ونتعرف عليها عن كثب والتي تساعدك على إنشاء مواقع ويب متجاوبة ومتوافقة مع الهواتف. تتضمن هذه السلسلة أكثر من 65 مثال تطبيقي عملي مع شيفراتها الكاملة.
</p>

<p>
	هذا الدرس جزء من <a href="https://academy.hsoub.com/tags/jquery%20mobile/" rel="">سلسلة دروس تشرح jQuery Mobile</a>:
</p>

<ul>
	<li>
		الدرس الأول: البداية، بناء وتقديم محتوى
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%86%D9%8A-%D8%A7%D9%84%D8%AA%D8%B6%D9%85%D9%8A%D9%86%D8%8C-%D8%AA%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9%D8%8C-%D8%A7%D9%84%D8%AA%D9%86%D9%82%D9%84-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-%D8%A7%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-r633/" rel="">الدرس الثاني: التضمين، تهيئة الصفحة، التنقل بين الصفحات وأحداث التحميل</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%84%D8%AB-%D8%A7%D8%AA%D8%AC%D8%A7%D9%87-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB%D9%87%D8%A7-r702/" rel="">الدرس الثالث: اتجاه الصفحة وأحداثها</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B1%D8%A7%D8%A8%D8%B9-%D8%B1%D8%A8%D8%B7-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AE%D8%A7%D8%B1%D8%AC%D9%8A%D8%A9-%D9%88%D8%AA%D9%86%D8%B8%D9%8A%D9%85-%D8%A7%D9%84%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D8%A8%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A9-%D9%88%D8%A8%D9%86%D8%A7%D8%A1-%D9%85%D8%AD%D8%AA%D9%88%D9%89-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%B7%D9%8A-r703/" rel="">الدرس الرابع: ربط صفحات خارجية وتنظيم المحتوى بنظام الشبكة وبناء محتوى قابل للطي</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AE%D8%A7%D9%85%D8%B3-%D8%A7%D9%84%D8%A3%D9%8A%D9%82%D9%88%D9%86%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%B2%D8%B1%D8%A7%D8%B1-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D8%A7%D8%AA-%D9%85%D8%AE%D8%B5%D8%B5%D8%A9-r717/" rel="">الدرس الخامس: الأيقونات والأزرار وإنشاء تنسيقات مخصصة</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%B3%D8%A7%D8%AF%D8%B3-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%A7%D9%84%D9%82%D9%88%D8%A7%D8%A6%D9%85-%D9%88%D8%AA%D9%86%D8%B3%D9%8A%D9%82%D9%87%D8%A7-%D9%88%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D9%86%D9%85%D8%A7%D8%B0%D8%AC-%D8%A7%D9%84%D8%A8%D8%AD%D8%AB-%D9%88%D8%AA%D8%B3%D8%AC%D9%8A%D9%84-%D8%A7%D9%84%D8%AF%D8%AE%D9%88%D9%84-r718/" rel="">الدرس السادس: إنشاء القوائم وتنسيقها وإنشاء نماذج البحث وتسجيل الدخول</a>
	</li>
</ul>

<h2>
	<a id="__jQuery_Mobile_2" rel=""></a>بدايتك مع jQuery Mobile
</h2>

<h3>
	<a id="__jQuery_Mobile__3" rel=""></a>ما هو jQuery Mobile المحمول
</h3>

<p>
	يوفرjQuery Mobile مجموعة وفيرة من أدوات التطوير التي تجعل موقع ويب الموجه للهواتف متجاوبًا ومرنًا وبسيطًا.<br>
	يُعرّف jQuery ببساطة على أنه مجموعة من إضافات وودجات (widgets) jQuery تهدف إلى توفير <abbr title="Application Programming Interface | واجهة برمجية"><abbr title="Application Programming Interface | واجهة برمجية">API</abbr></abbr> متعدد المنصات لإنشاء تطبيقات ويب للهواتف.<br>
	من حيث الشيفرات البرمجية، jQuery Mobile يشبه jQuery UI، لكن في حين أن jQuery UI موجه ل<a href="https://academy.hsoub.com/programming/general/%D8%A8%D8%B1%D9%85%D8%AC%D8%A9-%D8%AA%D8%B7%D8%A8%D9%8A%D9%82%D8%A7%D8%AA-%D8%B3%D8%B7%D8%AD-%D8%A7%D9%84%D9%85%D9%83%D8%AA%D8%A8/" rel="">تطبيقات سطح المكتب</a>، فإن jQuery Mobile موجه للهواتف المحمولة.
</p>

<h3>
	<a id="________7" rel=""></a>ما يجب معرفته حول إنشاء مواقع ويب للهواتف
</h3>

<p>
	يجب عليك معرفة ثلاثة كلمات رئيسية عند تطوير مواقع ويب للهواتف، وهي أنه يجب أن يكون الموقع الموجه للهواتف:
</p>

<ol>
	<li>
		<strong>متجاوبًا</strong>: يتضمن كيف يبدو شكل الصفحة عند التنقل، وكيف يُضْغط على الزر وكيف تُحمّل البيانات على الهاتف.
	</li>
	<li>
		<strong>مرنًا</strong>: يعني أنه يمكن تخصيص الموقع عن طريق المستخدم ليناسب رغباته.
	</li>
	<li>
		<strong>بسيطًا</strong>: يعني أن الموقع يسهل تصفحه عن طريق الهاتف.
	</li>
</ol>

<h3>
	<a id="____jQuery_Mobile__12" rel=""></a>ما يجب معرفته حول jQuery Mobile للمطورين
</h3>

<p>
	أثّرت jQuery بشكل كبير على العالم الناشئ من تطوير وتصميم الويب، فلقد غيّرت من طريق تنفيذ واستخدام جافا سكربت على مواقع وتطبيقات الويب ولذلك اختارتها مايكروسوفت كإطار جافا سكربت المفضل، وضمّنت دعم الإكمال التلقائي (auto-completion) لـ jQuery داخل visual studio، وبالتالي فإن jQuery mobile هي امتداد مدعوم وموثوق لمكتبة jQuery.
</p>

<h3>
	<a id="_jQuery_Mobile____jQuery_MOBILE__14" rel=""></a>لماذا jQuery Mobile؟ (تحتاج إلى معرفة jQuery Mobile كمطور)
</h3>

<p>
	كما أشرت في "ما يجب معرفته حول jQuery Mobile للمطورين”، أدى ظهور جيل أجهزة الهواتف إلى الحاجة إلى تطبيقات ويب متجاوبة ومرنة وبسيطة وبالتالي ارتفعت بسرعة الحاجة والطلب على jQuery mobile (إطار عمل jQuery)، وحان الآن الوقت بالنسبة لك كمعلم أو مبتدئ في <abbr title="Application Programming Interface | واجهة برمجية"><abbr title="Application Programming Interface | واجهة برمجية">API</abbr></abbr> مواقع الهواتف الجوالة للقفز والمشاركة مع هذا المشروع.
</p>

<h2>
	<a id="___jQuery_Mobile_16" rel=""></a>الجهاز الذي يُشغل jQuery Mobile
</h2>

<p>
	يعتمد عمل jQuery في مختلف الأجهزة على المتصفح ونظام التشغيل.<br>
	فالمتصفحات التي تدعم jQuery Mobile هي المتصفحات الحديثة التي تدعم وسوم HTML5 والقليل من CSS3.<br>
	فالأجهزة التي تدعم jQuery mobile هي الحواسيب المكتبية والمحمولة، أنظمة الكل في واحد (all-in-one)، الأجهزة اللوحيّة، الهواتف الذكية، أندرويد، iOS، بلاك بيري (النسخ الحديثة)، webOS، ويندوز للهواتف، وأجهزة القراءة الإلكترونية، فيدعم jQuery mobile أجهزة كيندل kindle التي تتضمن متصفح مبني على Webkit تجريبي.
</p>

<h3>
	<a id="_________jQuery_Mobile_20" rel=""></a>ما يحتاجه المطور المحترف لإنشاء مواقع ويب للهواتف باستخدام jQuery Mobile
</h3>

<ol>
	<li>
		لتطوير التطبيقات، ستستخدم:<br>
		بالنسبة لنظام ويندوز التطبيقات: Komodo IDE، eclipse، iWeb، Microsoft FrontPage، Aptana studio، Dreamweaver، notepad++. وسنستخدم Dreamweaver في هذا الدرس.<br>
		بالنسبة لنظام OsX التطبيقات: Coda، espresso، textwrangler، kod.
	</li>
	<li>
		لغات البرمجية التي يجب على مطور الويب معرفتها هي HTML5 و CSS3 وجافا سكربت.
	</li>
</ol>

<p>
	يتكون jQuery Mobile من أربعة ملفات: ملف جافا سكربت، ملف CSS، وملفي PNG.
</p>

<p>
	يُحمَّل ملف جافا سكربت بشكل مقصود بعد تحميل مكتبة jQuery الأساسية، ويقوم هذا الملف بمهام كثيرة مثل إنشاء الويدجات وتطبيق مستمعي الحدث (event listeners) وتفعيل <abbr title="Application Programming Interface | واجهة برمجية"><abbr title="Application Programming Interface | واجهة برمجية">API</abbr></abbr>.<br>
	ورقة أنماط CSS تحدد مخطط ومظهر عناصر صفحة jQuery Mobile، بالإضافة إلى تحديد الانتقالات (transitions) والرسوم المتحركة مع تحويلات CSS3.<br>
	يمكنك تحميل كامل حزمة jQuery Mobile (مكتبة جافا سكربت، CSSـ والرسومات) أو يمكنك الوصول إليها عن طريق مشروع CDN، راجع<a href="http://jquerymobile.com/download/" rel="external nofollow"> صفحة تحميل مشروع jQuery Mobile</a> للتفاصيل، سنستخدم CDN في أمثلتنا لهذا الدرس.
</p>

<h2>
	<a id="DOCTYPE___HTML___29" rel=""></a>DOCTYPE لبناء محتوى HTML لموقع الهاتف
</h2>

<h3>
	<a id="DOCTYPE___HTML4_30" rel=""></a>DOCTYPE انتقالي لـ HTML4
</h3>

<p>
	بالنسبة للمطورين الراضين باستخدام وسوم HTML المهملة لكن يريدون الانتقال إلى HTML 4 يمكنهم استخدام DOCTYPE الانتقالي والذي يسمح للمتصفح تحليل الوسوم المهملة وعرضها دون رمي (throw) أية أخطاء.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5416_7" style=""><span class="dec">&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&gt;</span></pre>

<h3>
	<a id="DOCTYPE___HTML4_36" rel=""></a>DOCTYPE الصارم لـ HTML4
</h3>

<p>
	يمكن للمطورين الذي لا يرغبون بتضمين دعم للوسوم المهملة وإمكانية وجود أخطاء تنسيق عند استخدام وضع التوافق 'compatibility' استخدام DOCTYPE الصارم والذي يخبر المتصفح برمي أخطاء عند تضمين وسوم مهملة في ملف HTML عند محاولة تحميله، وسيكون هذا مفيدًا لضمان عملك على معيار HTML4.
</p>

<h3>
	DOCTYPE من أجل HTML5
</h3>

<p>
	يعمل DOCTYPE للإصدار HTML5 تقريبًا على جميع المتصفحات القديمة وهو يُستخدم بالفعل على مواقع عديدة اليوم.<br>
	لاستخدام HTML5 DOCTYPE في ملف HTML، استخدم المقتطف التالي:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5416_9" style=""><span class="dec">&lt;!DOCTYPE html&gt;</span></pre>

<p>
	هيكل الموقع الأساسي باستخدام HTML5 DOCTYPE
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5416_11" style=""><span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;&lt;title&gt;&lt;/title&gt;&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<h2>
	<a id="___HTML5_CSS____52" rel=""></a>العمل مع هيكل HTML5 و CSS و جافا سكربت
</h2>

<h3>
	<a id="____HTML5_53" rel=""></a>بناء وتقديم المحتوي في HTML5
</h3>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5416_13" style=""><span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Titles should be short descriptions of the page</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">charset</span><span class="pun">=</span><span class="atv">"utf-8"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div&gt;</span><span class="pln">
    </span><span class="tag">&lt;h1&gt;</span><span class="pln">h1 tags should contain the most important information on your site</span><span class="tag">&lt;/h1&gt;</span><span class="pln">
    </span><span class="tag">&lt;p&gt;</span><span class="pln">Paragraph tags should be where most of your text content lives, or used as a separation between sections.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
    </span><span class="tag">&lt;ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;li&gt;</span><span class="pln">This is a list element</span><span class="tag">&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li&gt;</span><span class="pln">This is another element, notice the bullets and indentation </span><span class="tag">&lt;/li&gt;</span><span class="pln">
    </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
    </span><span class="tag">&lt;p&gt;</span><span class="pln">You probably noticed that I used a "div" tag to wrap these other tags in. I'm using it as a container.</span><span class="tag">&lt;/p&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<p>
	نعرف بالفعل ما تفعله هذه الشيفرة البرمجية، لكن دعنا نلقي نظرة حول شكله في الواقع. ستظهر لك الصورة في الأسفل شكل HTML الذي كتبناه:
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="27206" href="https://academy.hsoub.com/uploads/monthly_2018_03/img16.png.37ca9786aef187336a2a3a1fca7bb829.png" rel="" data-fileext="png"><img alt="img16.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27206" data-unique="xfrqyzdbi" src="https://academy.hsoub.com/uploads/monthly_2018_03/img16.thumb.png.9bcfcaeb5463e1785fd874202bfc2d51.png"></a>
</p>

<h3>
	<a id="CSS_____HTML5_78" rel=""></a>CSS في بناء وتقديم محتوى HTML5
</h3>

<p>
	اضغط على زر الإدخال بعد الوسم <code>&lt;title&gt; &lt;/title&gt;</code> وأضف المقتطف كما هو موضح في رابط الصورة التالية لربط ملف الأنماط css. إلى ملف html. الرئيسي.
</p>

<p style="text-align: center;">
	<img alt="img17.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27203" data-unique="d8rd297nv" src="https://academy.hsoub.com/uploads/monthly_2018_03/img17.png.e93cd6175887477f10ece7e67d741574.png">
</p>

<p>
	يجب وضع الشيفرة البرمجية التالية في الملف <code>hist.css</code>
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_5416_15" style=""><span class="lit">@charset</span><span class="pln"> </span><span class="str">"utf-8"</span><span class="pun">;</span><span class="pln">
</span><span class="com">/* CSS Document */</span><span class="pln">
body </span><span class="pun">{</span><span class="pln">
  background</span><span class="pun">:#</span><span class="lit">0CF</span><span class="pun">;</span><span class="pln">
  font</span><span class="pun">-</span><span class="pln">family</span><span class="pun">:</span><span class="pln"> </span><span class="typ">Helvetica</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Arial</span><span class="pun">,</span><span class="pln"> sans</span><span class="pun">-</span><span class="pln">serif</span><span class="pun">;</span><span class="pln">
  font</span><span class="pun">-</span><span class="pln">size</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0.75em</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
h1 </span><span class="pun">{</span><span class="pln">
  font</span><span class="pun">-</span><span class="pln">size</span><span class="pun">:</span><span class="pln"> </span><span class="lit">200</span><span class="pun">%</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
p </span><span class="pun">{</span><span class="pln">
  margin</span><span class="pun">:</span><span class="pln"> </span><span class="lit">5px</span><span class="pln"> </span><span class="lit">0</span><span class="pun">;</span><span class="pln">
  padding</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="lit">3px</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
</span><span class="pun">#</span><span class="pln">year</span><span class="pun">{</span><span class="pln">
  text</span><span class="pun">-</span><span class="pln">align</span><span class="pun">:</span><span class="pln">center</span><span class="pun">;</span><span class="pln">
  font</span><span class="pun">-</span><span class="pln">weight</span><span class="pun">:</span><span class="pln">bold</span><span class="pun">;</span><span class="pln">
  font</span><span class="pun">-</span><span class="pln">size</span><span class="pun">:</span><span class="lit">200</span><span class="pun">%;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
</span><span class="pun">.</span><span class="pln">small </span><span class="pun">{</span><span class="pln">
  font</span><span class="pun">-</span><span class="pln">size</span><span class="pun">:</span><span class="pln"> </span><span class="lit">80</span><span class="pun">%;</span><span class="pln">
</span><span class="pun">}</span></pre>

<p>
	تُظهر لك الصورة في الأسفل مظهر HTML الجديد بعد ربط ملف CSS .
</p>

<p style="text-align: center;">
	<img alt="img19.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27204" data-unique="vp9go9n4v" src="https://academy.hsoub.com/uploads/monthly_2018_03/img19.png.beb7143f13d641d2d7dfb9550c84bd2a.png">
</p>

<h3>
	<a id="______HTML5_112" rel=""></a>جافا سكربت في بناء وتقديم محتوى HTML5
</h3>

<p>
	ملخص لوضع وسوم جافا سكربت في ملفك:<br>
	<strong>تحميل السكربتات في عنصر head</strong>: يجعلها تُحمّل أولا لكن قد تُؤثّر سلبا على وقت التحميل.<br>
	<strong>تحميل السكربتات في body</strong> : تبدو فكرة جديدة لكنها تخلق مشاكل مع الصيانة وترمي (trows) تأخيرات التحميل المحتملة.<br>
	<strong>تحميل السكربتات قبل إغلاق وسم body </strong>: سيبدو تحميل موقع أسرع لكن قد يؤدي ذلك إلى نتيجة غير مقصودة لنقص وظائف الموقع في الثواني الأولى للتحميل.<br>
	دعنا نضع السكربتات في وسم head والتي هي الحالة المفضلة لكل مطور.
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_5416_17" style=""><span class="pln">  </span><span class="pun">&lt;</span><span class="pln">script src</span><span class="pun">=</span><span class="str">"js/javascript.js"</span><span class="pln"> type</span><span class="pun">=</span><span class="str">"text/javascript"</span><span class="pun">&gt;&lt;/</span><span class="pln">script</span><span class="pun">&gt;</span><span class="pln">
</span><span class="pun">&lt;/</span><span class="pln">head</span><span class="pun">&gt;</span><span class="pln">
</span><span class="pun">يجب</span><span class="pln"> </span><span class="pun">وضع</span><span class="pln"> </span><span class="pun">السكربت</span><span class="pln"> </span><span class="pun">التالي</span><span class="pln"> </span><span class="pun">في</span><span class="pln"> </span><span class="pun">ملف</span><span class="pln"> javascript</span><span class="pun">.</span><span class="pln">js

</span><span class="com">// JavaScript Document</span><span class="pln">
window</span><span class="pun">.</span><span class="pln">onload </span><span class="pun">=</span><span class="pln"> setYear</span><span class="pun">;</span><span class="pln">
</span><span class="kwd">function</span><span class="pln"> setYear</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  </span><span class="kwd">var</span><span class="pln"> currentYear </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">Date</span><span class="pun">();</span><span class="pln">
  document</span><span class="pun">.</span><span class="pln">getElementById</span><span class="pun">(</span><span class="str">'year'</span><span class="pun">).</span><span class="pln">innerHTML </span><span class="pun">=</span><span class="pln"> currentYear</span><span class="pun">.</span><span class="pln">getFullYear</span><span class="pun">();</span><span class="pln">
</span><span class="pun">}</span></pre>

<p>
	ستوضح لك الصورة أدناه شكل HTML الجديد بعد ربط ملف <code>js</code> ..
</p>

<p style="text-align: center;">
	<img alt="img112.png" class="ipsImage ipsImage_thumbnailed" data-fileid="27205" data-unique="fqxujkpb7" src="https://academy.hsoub.com/uploads/monthly_2018_03/img112.png.0ea9584206faf02951e3f4f7ab9f61ce.png">
</p>

<p>
	تعلمنا قليلا جول استخدام الحالي لهيكل HTML وربط CSS وتحميل السكربت (جافا سكربت)، والآن لنتعلم كيف نستخدم المهارات التي تعلمناها في jQuery mobile.
</p>

<p>
	ترجمة -وبتصرّف- للمقال <a href="https://www.script-tutorials.com/jquery-mobile-lesson-1/" rel="external nofollow">jQuery Mobile Lesson 1</a> لصاحبه Andrew
</p>

<h2>
	اقرأ أيضًا
</h2>

<ul>
	<li>
		الدرس التالي: <a href="https://academy.hsoub.com/programming/javascript/jquery/%D8%A7%D9%84%D8%AF%D8%B1%D8%B3-%D8%A7%D9%84%D8%AB%D8%A7%D9%86%D9%8A-%D8%A7%D9%84%D8%AA%D8%B6%D9%85%D9%8A%D9%86%D8%8C-%D8%AA%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9%D8%8C-%D8%A7%D9%84%D8%AA%D9%86%D9%82%D9%84-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%88%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-%D8%A7%D9%84%D8%AA%D8%AD%D9%85%D9%8A%D9%84-r633/" rel="">التضمين، تهيئة الصفحة، التنقل بين الصفحات وأحداث التحميل</a>
	</li>
</ul>
]]></description><guid isPermaLink="false">629</guid><pubDate>Tue, 25 Jun 2019 08:03:00 +0000</pubDate></item><item><title>&#x625;&#x646;&#x634;&#x627;&#x621; &#x62A;&#x637;&#x628;&#x64A;&#x642;&#x627;&#x62A; &#x648;&#x64A;&#x628; &#x630;&#x627;&#x62A; &#x635;&#x641;&#x62D;&#x629; &#x648;&#x62D;&#x64A;&#x62F;&#x629; &#x628;&#x627;&#x633;&#x62A;&#x62E;&#x62F;&#x627;&#x645; jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D8%B7%D8%A8%D9%8A%D9%82%D8%A7%D8%AA-%D9%88%D9%8A%D8%A8-%D8%B0%D8%A7%D8%AA-%D8%B5%D9%81%D8%AD%D8%A9-%D9%88%D8%AD%D9%8A%D8%AF%D8%A9-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-jquery-r403/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2016_12/jqeury-spa.png.b10e9a4623a4c444525b42262acdb6a9.png" /></p>

<p id="إنشاء-تطبيقات-ويب-ذات-صفحة-وحيدة-باستخدام-jquery">
	أصبحت تطبيقات الويب ذات الصفحة الوحيدة Single Page Apps رائجةً في هذه الفترة في تطوير الويب، فأمسى كل شخصٍ يريد أن ينُشِئ تطبيق ويب ذا صفحةٍ وحيدة.<br>
	سأريك في هذا الدرس طريقةٍ سهلة لإنشاء تطبيقات الويب ذات الصفحة الوحيدة باستخدام jQuery ودون استخدام أيّة إطارات عمل مثل React أو Angular أو Vue …إلخ.
</p>

<p style="text-align: center;">
	<img alt="jqeury-spa.png" class="ipsImage ipsImage_thumbnailed" data-fileid="20547" data-unique="bj1utk0ty" src="https://academy.hsoub.com/uploads/monthly_2016_12/jqeury-spa.png.f18483eca262eb322ea7cda40dd87f47.png" style=""></p>

<h2 id="لمحة">
	لمحة
</h2>

<p>
	لأننا نريد إنشاء تطبيق ويب ذا صفحةٍ وحيدة، فسنستخدم <code>sammy.js</code> للتوجيه (routing)، مكتبة Sammy هي مكتبة jQuery بمساحة تخزينية لا تتجاوز 5.2 كيلوبايت.<br>
	سيبدو سكربت التوجيه المكتوب لإضافة Sammy كما يلي:
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_3410_7">
<span class="kwd">var</span><span class="pln"> app </span><span class="pun">=</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">sammy</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">

  </span><span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#/'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    </span><span class="com">//your function</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#about/'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    </span><span class="com">//your function </span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
  </span><span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#contact/'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    </span><span class="com">//your function</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
</span><span class="pun">});</span></pre>

<p>
	علينا أولًا تهيئة التطبيق باستخدام <code>‎$.sammy</code> وتخزين نسخة من الكائن في المتغير <code>app</code>. يمكننا تعريف تعليمة «توجيه» (route) في sammy بالطريقة الآتية:
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_3410_9">
<span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'path/'</span><span class="pun">,</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln">
</span><span class="com">// ...</span><span class="pln">
</span><span class="pun">});</span><span class="pln"> </span></pre>

<p>
	هنالك دالة ستُستدعى لكل عملية توجيه، والتي يمكن أن نكتب بداخلها البنية المنطقية لها، ونربط البيانات اللازمة إلى كل «صفحة»، لأن كل عملية توجيه ستؤدي إلى إظهار «صفحة» مختلفة.<br>
	بعد تعريف كل تعليمات التوجيه، فسنتمكن من تشغيل تطبيق الويب ذي الصفحة الوحيدة باستدعاء الدالة <code>run()‎</code> التابعة للكائن <code>app</code> كالتالي <code>app.run()‎</code>.
</p>

<h2 id="تطبيق-التدوين-الذي-سننشئه">
	تطبيق التدوين الذي سننشئه
</h2>

<p>
	لتوضيح المفهوم الذي سنشرحه، فسنحاول إنشاء مثال واقعي. لنفترض أننا نريد إنشاء مدونة بسيطة، التي يوجد فيها صفحة رئيسية (أي صفحة Home) وصفحة معلومات (About). سنُنشِئ في صفحة index قائمة بالتدوينات، والضغط على أي واحدة منها سيأخذنا إلى صفحتها. يمكنك أن تجرب هذا التطبيق عمليًا <a href="https://coderexample.com/demo/single-page-apps-with-jquery-routing/" rel="external nofollow">هنا</a>.<br>
	سنستخدم صيغة JSON لقائمة التدوينات، وسنستخدم إضافة Sammy لعرضها.
</p>

<h3 id="بنية-الملفات">
	بنية الملفات
</h3>

<pre class="ipsCode" id="ips_uid_3410_11">
- index.html &lt;!-- main layout --&gt;
- app.js &lt;!-- stores all our routing logic --&gt;
- css
--- style.css 
- js
--- jquery-1.11.3.min.js
--- sammy.min.js
--- sammy.template.js 
- data
--- articles.json
- templates &lt;!-- the templates pages that will be injected into the main layout --&gt;
--- article.template
--- article-detail.template
--- about.template</pre>

<h3 id="شيفرة-html">
	شيفرة HTML
</h3>

<p>
	سنستخدم قالب HTML boilerplate لإنشاء شيفرة HTML:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_491_8">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"viewport"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"width=device-width, initial-scale=1.0"</span><span class="tag">&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln">  </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"js/jquery-1.11.3.min.js"</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/javascript"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln">  </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"js/sammy.min.js"</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/javascript"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"js/sammy.template.js"</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/javascript"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"css/style.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"app.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">

</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"header-container"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;header</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"wrapper clearfix"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;nav&gt;</span><span class="pln">
        </span><span class="tag">&lt;ul&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#/"</span><span class="tag">&gt;</span><span class="pln">Home</span><span class="tag">&lt;/a&gt;&lt;/li&gt;</span><span class="pln">
          </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#/about/"</span><span class="tag">&gt;</span><span class="pln">About</span><span class="tag">&lt;/a&gt;&lt;/li&gt;</span><span class="pln"> </span><span class="com">&lt;!-- defining nav url according to route--&gt;</span><span class="pln">
        </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;/nav&gt;</span><span class="pln">
    </span><span class="tag">&lt;/header&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">

  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"main-container"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">class</span><span class="pun">=</span><span class="atv">"main wrapper clearfix"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"app"</span><span class="tag">&gt;</span><span class="pln">
      </span><span class="com">&lt;!-- template will be injected here --&gt;</span><span class="pln">
      </span><span class="tag">&lt;/div&gt;</span><span class="pln">
    </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

<h3 id="تعريف-التوجيهات">
	تعريف التوجيهات
</h3>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_491_10">
<span class="com">//app.js</span><span class="pln">
</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">(</span><span class="pln">$</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">

  </span><span class="kwd">var</span><span class="pln"> app </span><span class="pun">=</span><span class="pln"> $</span><span class="pun">.</span><span class="pln">sammy</span><span class="pun">(</span><span class="str">'#app'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">use</span><span class="pun">(</span><span class="str">'Template'</span><span class="pun">);</span><span class="pln">

    </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">around</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">(</span><span class="pln">callback</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      </span><span class="kwd">var</span><span class="pln"> context </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">this</span><span class="pun">;</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">load</span><span class="pun">(</span><span class="str">'data/articles.json'</span><span class="pun">)</span><span class="pln">
          </span><span class="pun">.</span><span class="pln">then</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">(</span><span class="pln">items</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
            context</span><span class="pun">.</span><span class="pln">items </span><span class="pun">=</span><span class="pln"> items</span><span class="pun">;</span><span class="pln">
          </span><span class="pun">})</span><span class="pln">
          </span><span class="pun">.</span><span class="pln">then</span><span class="pun">(</span><span class="pln">callback</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">

    </span><span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#/'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">context</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      context</span><span class="pun">.</span><span class="pln">app</span><span class="pun">.</span><span class="pln">swap</span><span class="pun">(</span><span class="str">''</span><span class="pun">);</span><span class="pln">
      $</span><span class="pun">.</span><span class="pln">each</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">items</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">i</span><span class="pun">,</span><span class="pln"> item</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        context</span><span class="pun">.</span><span class="pln">render</span><span class="pun">(</span><span class="str">'templates/article.template'</span><span class="pun">,</span><span class="pln"> </span><span class="pun">{</span><span class="pln">id</span><span class="pun">:</span><span class="pln"> i</span><span class="pun">,</span><span class="pln"> item</span><span class="pun">:</span><span class="pln"> item</span><span class="pun">})</span><span class="pln">
               </span><span class="pun">.</span><span class="pln">appendTo</span><span class="pun">(</span><span class="pln">context</span><span class="pun">.</span><span class="pln">$element</span><span class="pun">());</span><span class="pln">
      </span><span class="pun">});</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">

    </span><span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#/about/'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">context</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
        </span><span class="kwd">var</span><span class="pln"> str</span><span class="pun">=</span><span class="pln">location</span><span class="pun">.</span><span class="pln">href</span><span class="pun">.</span><span class="pln">toLowerCase</span><span class="pun">();</span><span class="pln">
        context</span><span class="pun">.</span><span class="pln">app</span><span class="pun">.</span><span class="pln">swap</span><span class="pun">(</span><span class="str">''</span><span class="pun">);</span><span class="pln">
        context</span><span class="pun">.</span><span class="pln">render</span><span class="pun">(</span><span class="str">'templates/about.template'</span><span class="pun">,</span><span class="pln"> </span><span class="pun">{})</span><span class="pln">
               </span><span class="pun">.</span><span class="pln">appendTo</span><span class="pun">(</span><span class="pln">context</span><span class="pun">.</span><span class="pln">$element</span><span class="pun">());</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">

    </span><span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#/article/:id'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">context</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">item </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">items</span><span class="pun">[</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">params</span><span class="pun">[</span><span class="str">'id'</span><span class="pun">]];</span><span class="pln">
      </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(!</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">item</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">notFound</span><span class="pun">();</span><span class="pln"> </span><span class="pun">}</span><span class="pln">
      </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">partial</span><span class="pun">(</span><span class="str">'templates/article-detail.template'</span><span class="pun">);</span><span class="pln">
    </span><span class="pun">});</span><span class="pln">


    </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">before</span><span class="pun">(</span><span class="str">'.*'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">

        </span><span class="kwd">var</span><span class="pln"> hash </span><span class="pun">=</span><span class="pln"> document</span><span class="pun">.</span><span class="pln">location</span><span class="pun">.</span><span class="pln">hash</span><span class="pun">;</span><span class="pln">
        $</span><span class="pun">(</span><span class="str">"nav"</span><span class="pun">).</span><span class="pln">find</span><span class="pun">(</span><span class="str">"a"</span><span class="pun">).</span><span class="pln">removeClass</span><span class="pun">(</span><span class="str">"current"</span><span class="pun">);</span><span class="pln">
        $</span><span class="pun">(</span><span class="str">"nav"</span><span class="pun">).</span><span class="pln">find</span><span class="pun">(</span><span class="str">"a[href='"</span><span class="pun">+</span><span class="pln">hash</span><span class="pun">+</span><span class="str">"']"</span><span class="pun">).</span><span class="pln">addClass</span><span class="pun">(</span><span class="str">"current"</span><span class="pun">);</span><span class="pln">
   </span><span class="pun">});</span><span class="pln">

  </span><span class="pun">});</span><span class="pln">

  $</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    app</span><span class="pun">.</span><span class="pln">run</span><span class="pun">(</span><span class="str">'#/about/'</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">

</span><span class="pun">})(</span><span class="pln">jQuery</span><span class="pun">);</span></pre>

<p>
	هيئنا في البداية التطبيق داخل العنصر <code>‎#app</code>، حيث سنُضيف القوالب المختلفة بناءً على مسار التوجيه. سنستخدم أيضًا محرك قوالب باسم <a href="http://sammyjs.org/download#packages" rel="external nofollow">sammy template engine</a>.
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_491_14">
<span class="kwd">this</span><span class="pun">.</span><span class="pln">use</span><span class="pun">(</span><span class="str">'Template'</span><span class="pun">);</span></pre>

<p>
	سنحصل على بيانات المدونة من ملف <code>articles.json</code> باستخدام الدالة <code>load()‎</code> التابعة لمكتبة jQuery (يمكنك أيضًا استخدام <code>‎$.get</code> أو <code>‎$.post</code>)، وتخزين الناتج في المتغير <code>context</code>.<br>
	حان الآن الوقت لتعريف تعليمة التوجيه لصفحة index باستخدام <code>‎#/‎</code>:
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_491_16">
<span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#/'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">context</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  context</span><span class="pun">.</span><span class="pln">app</span><span class="pun">.</span><span class="pln">swap</span><span class="pun">(</span><span class="str">''</span><span class="pun">);</span><span class="pln">
  $</span><span class="pun">.</span><span class="pln">each</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">items</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">i</span><span class="pun">,</span><span class="pln"> item</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    context</span><span class="pun">.</span><span class="pln">render</span><span class="pun">(</span><span class="str">'templates/article.template'</span><span class="pun">,</span><span class="pln"> </span><span class="pun">{</span><span class="pln">id</span><span class="pun">:</span><span class="pln"> i</span><span class="pun">,</span><span class="pln"> item</span><span class="pun">:</span><span class="pln"> item</span><span class="pun">})</span><span class="pln">
           </span><span class="pun">.</span><span class="pln">appendTo</span><span class="pun">(</span><span class="pln">context</span><span class="pun">.</span><span class="pln">$element</span><span class="pun">());</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
</span><span class="pun">});</span></pre>

<p>
	لدينا بيانات مخزنة في المتغير <code>context</code>، سنمرّ الآن عبر تلك البيانات عبر حلقة تكرار باستعمال الدالة <code>‎$.each</code> ثم عرضها في <code>article.template</code>. سنستخدم أيضًا الدالة <code>context.app.swap()‎</code> لكي نُفرِّغ العنصر الذي سنضع فيه المحتويات (أي <code>‎#app</code>) مما فيه قبل عرض القالب.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_491_18">
<span class="tag">&lt;article&gt;</span><span class="pln">
  </span><span class="tag">&lt;section&gt;</span><span class="pln">
    &lt;a href="#/article/</span><span class="pun">&lt;%=</span><span class="pln"> id %&gt;"&gt;</span><span class="tag">&lt;h2&gt;</span><span class="pun">&lt;%=</span><span class="pln"> item</span><span class="pun">.</span><span class="pln">title %&gt;</span><span class="tag">&lt;/h2&gt;&lt;/a&gt;</span><span class="pln">
  </span><span class="tag">&lt;/section&gt;</span><span class="pln">
</span><span class="tag">&lt;/article&gt;</span></pre>

<p>
	سنستخدم هنا مُحرِّك القوالب (templating engine) لكي نعرض القيم القابلة للتغيير باستخدام الصيغة <code>‎&lt;%= yourdata %&gt;‎</code>، يمكنك أيضًا إضافة رابط لصفحة تفاصيل كل مقالة باستخدام الصيغة <code>‎#/article/&lt;%= id %&gt;‎</code>.<br>
	الضغط على رابط التدوينة سيأخذنا إلى قالب <code>article-detail.template</code>، حيث نستطيع إظهار صورة التدوينة وملخص عنها …إلخ.<br>
	وخلف الكواليس، سنُعرِّف تعليمة توجيه إلى تفاصيل التدوينة في ملف <code>app.js</code>، وسنحصل على مُعرِّف التدوينة كمعامل (parameter) ثم نُمرِّر البيانات إلى <code>article-detail.template</code>.
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_491_20">
<span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#/article/:id'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">context</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">item </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">items</span><span class="pun">[</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">params</span><span class="pun">[</span><span class="str">'id'</span><span class="pun">]];</span><span class="pln">
  </span><span class="kwd">if</span><span class="pln"> </span><span class="pun">(!</span><span class="kwd">this</span><span class="pun">.</span><span class="pln">item</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln"> </span><span class="kwd">return</span><span class="pln"> </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">notFound</span><span class="pun">();</span><span class="pln"> </span><span class="pun">}</span><span class="pln">
  </span><span class="kwd">this</span><span class="pun">.</span><span class="pln">partial</span><span class="pun">(</span><span class="str">'templates/article-detail.template'</span><span class="pun">);</span><span class="pln">
</span><span class="pun">});</span></pre>

<p>
	وبشكلٍ شبيه، يمكننا إنشاء صفحة ثابتة باسم «about» ونعرضها عبر قالب <code>about.template</code>.
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_491_22">
<span class="kwd">this</span><span class="pun">.</span><span class="kwd">get</span><span class="pun">(</span><span class="str">'#/about/'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">(</span><span class="pln">context</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
    </span><span class="kwd">var</span><span class="pln"> str</span><span class="pun">=</span><span class="pln">location</span><span class="pun">.</span><span class="pln">href</span><span class="pun">.</span><span class="pln">toLowerCase</span><span class="pun">();</span><span class="pln">
    context</span><span class="pun">.</span><span class="pln">app</span><span class="pun">.</span><span class="pln">swap</span><span class="pun">(</span><span class="str">''</span><span class="pun">);</span><span class="pln">
    context</span><span class="pun">.</span><span class="pln">render</span><span class="pun">(</span><span class="str">'templates/about.template'</span><span class="pun">,</span><span class="pln"> </span><span class="pun">{})</span><span class="pln">
           </span><span class="pun">.</span><span class="pln">appendTo</span><span class="pun">(</span><span class="pln">context</span><span class="pun">.</span><span class="pln">$element</span><span class="pun">());</span><span class="pln">
</span><span class="pun">});</span></pre>

<p>
	لقد نسينا أهم خطوة، ألا وهي تهيئة التطبيق باستخدام <code>app.run()‎</code> حيث يمكنك تحديد مكان التوجيه الافتراضي لتطبيقك. إذا أردتَ أن تفتح صفحة about أولًا فيمكنك أن تكتب:
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_491_24">
<span class="pln">$</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  app</span><span class="pun">.</span><span class="pln">run</span><span class="pun">(</span><span class="str">'#/about/'</span><span class="pun">);</span><span class="pln">
</span><span class="pun">});</span></pre>

<p>
	إذا أردتَ إجراء بعض العمليات قبل استدعاء كل تعليمة توجيه، فيمكنك استخدام الدالة <code>before()‎</code>. سنُجري في الأسطر الآتية تعديلاتٍ على قائمة التنقل (<code>nav</code>) اعتمادًا على مسار التوجيه الحالي:
</p>

<pre class="ipsCode prettyprint lang-javascript prettyprinted" id="ips_uid_491_26">
<span class="kwd">this</span><span class="pun">.</span><span class="pln">before</span><span class="pun">(</span><span class="str">'.*'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
     </span><span class="kwd">var</span><span class="pln"> hash </span><span class="pun">=</span><span class="pln"> document</span><span class="pun">.</span><span class="pln">location</span><span class="pun">.</span><span class="pln">hash</span><span class="pun">;</span><span class="pln">
     $</span><span class="pun">(</span><span class="str">"nav"</span><span class="pun">).</span><span class="pln">find</span><span class="pun">(</span><span class="str">"a"</span><span class="pun">).</span><span class="pln">removeClass</span><span class="pun">(</span><span class="str">"current"</span><span class="pun">);</span><span class="pln">
     $</span><span class="pun">(</span><span class="str">"nav"</span><span class="pun">).</span><span class="pln">find</span><span class="pun">(</span><span class="str">"a[href='"</span><span class="pun">+</span><span class="pln">hash</span><span class="pun">+</span><span class="str">"']"</span><span class="pun">).</span><span class="pln">addClass</span><span class="pun">(</span><span class="str">"current"</span><span class="pun">);</span><span class="pln">
</span><span class="pun">});</span></pre>

<h2 id="الخلاصة">
	الخلاصة
</h2>

<p>
	هذا درسٌ بسيطٌ جدًا لكي تأخذ فكرة عن كيفية عمل تطبيق ذي صفحةٍ وحيدةٍ باستخدام jQuery. يمكنك الآن المضي قدمًا وإنشاء تطبيقات ذات صفحة وحيدة. إحدى الأشياء التي عليك أن تأخذها بعين الاعتبار هي أنَّك ستحتاج إلى خادوم ويب لتشغيل التطبيق، ويمكنك أيضًا تجربة متصفح Firefox، لأنَّ متصفح Chrome يحجب طلبيات Ajax لأيّة بروتوكولات ما عدا http://‎ أو https://‎، لذا إذا كنتَ ستُشغِّل هذا السكربت على جهازك المحلي فلن يعمل لأنَّ مسارات الملفات المحلية تبدأ بالسابقة file://‎.<br>
	ترجمة –وبتصرّف– للمقال <a href="https://coderexample.com/single-page-apps-jquery-routing/" rel="external nofollow">Single Page Apps with jQuery Routing</a> لصاحبه Arkaprava Majumder
</p>
]]></description><guid isPermaLink="false">403</guid><pubDate>Thu, 29 Dec 2016 12:40:55 +0000</pubDate></item><item><title>&#x643;&#x64A;&#x641;&#x64A;&#x629; &#x625;&#x646;&#x634;&#x627;&#x621; &#x62A;&#x62D;&#x631;&#x64A;&#x643;&#x627;&#x62A; &#x645;&#x634;&#x627;&#x628;&#x647;&#x629; &#x644;&#x62A;&#x644;&#x643; &#x627;&#x644;&#x62A;&#x64A; &#x641;&#x64A; Windows 8 &#x628;&#x627;&#x633;&#x62A;&#x62E;&#x62F;&#x627;&#x645; CSS3 &#x648; jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D9%83%D9%8A%D9%81%D9%8A%D8%A9-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%AA%D8%AD%D8%B1%D9%8A%D9%83%D8%A7%D8%AA-%D9%85%D8%B4%D8%A7%D8%A8%D9%87%D8%A9-%D9%84%D8%AA%D9%84%D9%83-%D8%A7%D9%84%D8%AA%D9%8A-%D9%81%D9%8A-windows-8-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-css3-%D9%88-jquery-r243/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2016_01/windows8-animation-css3-jquery.png.de48b820d7a670d5eb7dc8b05e06e2d2.png" /></p>

<div id="wmd-preview-section-27"><p id="كيفية-إنشاء-تحريكات-مشابهة-لتلك-التي-في-windows-8-باستخدام-css3-وjquery">رغم أنّ تحويلات CSS3 ثلاثية الأبعاد صار لها فترةً لا بأس بها من الزمن، إلّا أنّني اكتشفت عدم امتلاك الخبرة الكافية للعمل معها بعد. أستخدم Windows 8 منذ فترة من الوقت، ومن أوّل الأمور التي لفتت نظري كانت الانتقالات transitions والتحريكات animations المبنية ضمن لوح البداية Start Dashboard، لذلك خطرت ببالي فكرة رائعة، وهي لماذا لا تكون خبرتي الأولى مع تحويلات CSS3 ثلاثية البعد ببناء تطبيق يماثل في سلوكه تلك التحريكات والتأثيرات في Windows 8؟ وهذا ما حدث في هذا الدرس.</p><p style="text-align: center;"><a href="https://academy.hsoub.com/uploads/monthly_2016_01/windows8-animation-css3-jquery.png.9e2b67ddad935545a41510e2c01ee4b2.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="11482" src="https://academy.hsoub.com/uploads/monthly_2016_01/windows8-animation-css3-jquery.thumb.png.c20baacb254053b884b3ad476b548a84.png" class="ipsImage ipsImage_thumbnailed" alt="windows8-animation-css3-jquery.thumb.png"></a></p><p>سأستخدم خصائص CSS بدون أي بادئة prefix وذلك بغرض الاختصار، لكنك ستجد الخصائص كاملة ضمن النص المصدري للمشروع على Github. ستعمل مقاطع الشيفرة التي ستجدها هنا على متصفحات تدعم خصائص CSS المستخدمة.</p></div><div id="wmd-preview-section-28"><h2 id="الرماز-the-markup">الرماز The Markup</h2><p>بنية هذا التطبيق بسيطة: يتكون لوح البداية من قائمة من القطع tiles بثلاثة قياسات وهي الصغير، الكبير، والكبير جدًا. لكل قطعة من هذه القطع صفحة page مرتبطة معها. والصفحة عبارة عن تغطية <span style="font-family:courier new,courier,monospace;">overlay</span> تظهر عند النقر على إحدى القطع في لوح البداية. سنعتبر الصفحة أنّها تُحاكي تطبيق سطح مكتب في Windows 8، فتكون القطعة كما هو واضح اختصارًا له (للصفحة).</p><p>عند النقر على قطعة ستُفتح الصفحة الموافقة لها. يوجد نوعان من الانتقالات للصفحة بعد فتحها يدعمهما اللوح في Windows 8. يفتح أحدهما الصفحة بتأثير دوران ثلاثي الأبعاد اعتبارًًا من يمين الشاشة، أمّا الآخر فتنزلق فيه الصفحة من وإلى اليسار. سنعرّف صنف CSS لكل نوع من نوعيّ الصفحة، حيث سيكون الصنف <span style="font-family:courier new,courier,monospace;">s-page </span>للصفحات التي تنزلق من وإلى اليسار، أمّا الصنف <span style="font-family:courier new,courier,monospace;">r-page </span>فسيكون للصفحات التي تدور من اليمين.</p><p>ينبغي علينا من أجل كل قطعة تعيين نوع الصفحة التي ستفتحها القطعة (بالاعتماد على التأثير الذي نريده من أجل هذه الصفحة). سنعرّف نوع الصفحة لكلّ قطعة باستخدام سمة attribute مخصّصة سنسميها<span style="font-family:courier new,courier,monospace;"> data-type-page</span>، ستهتم هذه الـسمة بتطبيق أسماء أصناف CSS الصحيحة التي ستفعّل التحريكات المناسبة فيما بعد.</p><p>يجب أن يكون لكل صفحة اسم. سيختلف اسم الصفحة لتطبيق معيّن عن اسم الصفحة لتطبيق آخر، فمثلًا الـقطعة المسمّاة Skype ستفتح صفحة اسمها<span style="font-family:courier new,courier,monospace;"> skype-app</span> وهكذا دواليك. لقد استخدمت اسميّ صفحة فقط في هذا المثال، وقد كرّرتهما من أجل جميع الـقطع الباقية بغرض التبسيط، كما استخدمت الاسم <span style="font-family:courier new,courier,monospace;">custom-page</span> لآخر قطعة وذلك على سبيل المثال. ربما تحتاج أن تضيف صفحة مختلفة لكل قطعة، وهذا يعني اسم صفحة مختلف لكلٍّ منها. </p><p>إليك الرماز الخاص بكامل اللوح (الـقطع والصفحات):</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">&lt;div class="demo-wrapper"&gt; 
  &lt;div class="s-page random-restored-page"&gt; 
    &lt;div class="page-content"&gt; 
      &lt;h2 class="page-title"&gt;Some minimized App&lt;/h2&gt; 
      &lt;div class="close-button s-close-button"&gt;x&lt;/div&gt; 
    &lt;/div&gt; 
  &lt;/div&gt; 

  &lt;div class="s-page custom-page"&gt; 
    &lt;div class="page-content"&gt; 
      &lt;h2 class="page-title"&gt;Thank You!&lt;/h2&gt; 
      &lt;div class="close-button s-close-button"&gt;x&lt;/div&gt; 
    &lt;/div&gt; 
  &lt;/div&gt; 

  &lt;div class="r-page random-r-page"&gt; 
    &lt;div class="page-content"&gt; 
      &lt;h2 class="page-title"&gt;App Screen&lt;/h2&gt; 
      &lt;p&gt;Chew iPad power cord chew iPad power cord attack feet chase mice leave dead animals as gifts and stick butt in face chew iPad power cord. Chase mice. Run in circles use lap as chair why must they do that. Intrigued by the shower destroy couch leave hair everywhere sleep on keyboard chew iPad power cord. Use lap as chair. Missing until dinner time stand in front of the computer screen, intently sniff hand. Find something else more interesting. Destroy couch play time so inspect anything brought into the house hate dog burrow under covers. Sleep on keyboard destroy couch so hate dog so hide when guests come over. Chase mice destroy couch lick butt throwup on your pillow use lap as chair yet intrigued by the shower but climb leg. Stare at ceiling make muffins or hunt anything that moves claw drapes. Intently sniff hand intrigued by the shower. Why must they do that. Cat snacks leave dead animals as gifts or inspect anything brought into the house sweet beast so stare at ceiling give attitude. Flop over claw drapes but sun bathe lick butt, and chase mice. Rub face on everything lick butt leave hair everywhere lick butt, missing until dinner time for use lap as chair lick butt. Make muffins leave dead animals as gifts play time. Chew foot intrigued by the shower stare at ceiling inspect anything brought into the house yet hopped up on goofballs. Hunt anything that moves intently sniff hand for hunt anything that moves play time. Chew foot climb leg throwup on your pillow so lick butt yet make muffins hate dog. Intrigued by the shower. Intently sniff hand shake treat bag. Cat snacks burrow under covers make muffins but all of a sudden go crazy find something else more interesting. Flop over chase mice. Give attitude. Inspect anything brought into the house. Stick butt in face sun bathe so find something else more interesting and intrigued by the shower. Rub face on everything use lap as chair. Under the bed claw drapes chase mice but leave hair everywhere yet make muffins yet claw drapes. Use lap as chair. Find something else more interesting stretch for under the bed. Nap all day intrigued by the shower, hate dog sweet beast intently sniff hand so hate dog nap all day. Swat at dog hide when guests come over and mark territory chase mice for cat snacks. Use lap as chair. Lick butt throwup on your pillow need to chase tail. Mark territory. Stick butt in face shake treat bag yet hunt anything that moves, yet hopped up on goofballs yet stare at ceiling under the bed. Give attitude chase imaginary bugs stretch so hunt anything that moves so hide when guests come over but intrigued by the shower find something else more interesting. Make muffins behind the couch for chew foot. Sweet beast flop over but throwup on your pillow. Intently sniff hand use lap as chair and missing until dinner time and chase imaginary bugs. &lt;/p&gt; 
    &lt;/div&gt; 
    &lt;div class="close-button r-close-button"&gt;x&lt;/div&gt; 
  &lt;/div&gt; 

  &lt;div class="dashboard clearfix"&gt; 
    &lt;ul class="tiles"&gt; 
      &lt;div class="col1 clearfix"&gt; 
        &lt;li class="tile tile-big tile-1 slideTextUp" data-page-type="r-page" data-page-name="random-r-page"&gt; 
          &lt;div&gt;&lt;p&gt;This tile's content slides up&lt;/p&gt;&lt;/div&gt; 
          &lt;div&gt;&lt;p&gt;View all tasks&lt;/p&gt;&lt;/div&gt; 
        &lt;/li&gt; 

        &lt;li class="tile tile-small tile tile-2 slideTextRight" data-page-type="s-page" data-page-name ="random-restored-page"&gt; 
          &lt;div&gt;&lt;p class="icon-arrow-right"&gt;&lt;/p&gt;&lt;/div&gt; 
          &lt;div&gt;&lt;p&gt;Tile's content slides right. Page opens from left&lt;/p&gt;&lt;/div&gt; 
        &lt;/li&gt; 

        &lt;li class="tile tile-small last tile-3" data-page-type="r-page" data-page-name="random-r-page"&gt; 
          &lt;p class="icon-calendar-alt-fill"&gt;&lt;/p&gt; 
        &lt;/li&gt; 

        &lt;li class="tile tile-big tile-4" data-page-type="r-page" data-page-name="random-r-page"&gt; 
          &lt;figure&gt; 
            &lt;img src="images/blue.jpg" /&gt; 
            &lt;figcaption class="tile-caption caption-left"&gt;Slide-out Caption from left&lt;/figcaption&gt;
          &lt;/figure&gt; 
        &lt;/li&gt; 
      &lt;/div&gt; 

      &lt;div class="col2 clearfix"&gt; 
        &lt;li class="tile tile-big tile-5" data-page-type="r-page" data-page-name="random-r-page"&gt; 
          &lt;div&gt;&lt;p&gt;&lt;span class="icon-cloudy"&gt;&lt;/span&gt;Weather&lt;/p&gt;&lt;/div&gt; 
        &lt;/li&gt; 

        &lt;li class="tile tile-big tile-6 slideTextLeft" data-page-type="r-page" data-page-name="random-r-page"&gt; 
          &lt;div&gt;&lt;p&gt;&lt;span class="icon-skype"&gt;&lt;/span&gt;Skype&lt;/p&gt;&lt;/div&gt; 
          &lt;div&gt;&lt;p&gt;Make a Call&lt;/p&gt;&lt;/div&gt; 
        &lt;/li&gt; 

        &lt;li class="tile tile-small tile-7 rotate3d rotate3dX" data-page-type="r-page" data-page-name="random-r-page"&gt; 
          &lt;div class="faces"&gt; 
            &lt;div class="front"&gt;&lt;span class="icon-picassa"&gt;&lt;/span&gt;&lt;/div&gt; 
            &lt;div class="back"&gt;&lt;p&gt;Launch Picassa&lt;/p&gt;&lt;/div&gt; 
          &lt;/div&gt; 
        &lt;/li&gt; 

        &lt;li class="tile tile-small last tile-8 rotate3d rotate3dY" data-page-type="r-page" data-page-name="random-r-page"&gt; 
          &lt;div class="faces"&gt; 
            &lt;div class="front"&gt;&lt;span class="icon-instagram"&gt;&lt;/span&gt;&lt;/div&gt;
            &lt;div class="back"&gt;&lt;p&gt;Launch Instagram&lt;/p&gt;&lt;/div&gt; 
          &lt;/div&gt; 
        &lt;/li&gt; 
      &lt;/div&gt; 

      &lt;div class="col3 clearfix"&gt; 
        &lt;li class="tile tile-2xbig tile-9" data-page-type="custom-page" data-page-name="random-r-page"&gt; 
          &lt;figure&gt; 
            &lt;img src="images/summer.jpg" /&gt; 
            &lt;figcaption class="tile-caption caption-bottom"&gt;Fixed Caption: Some Subtitle or Tile Description Goes Here with some kinda link or anything 
          &lt;/figure&gt; 
        &lt;/li&gt; 

        &lt;li class="tile tile-big tile-10" data-page-type="s-page" data-page-name="custom-page"&gt; 
          &lt;div&gt;&lt;p&gt;Windows-8-like Animations with CSS3 &amp; jQuery © Sara Soueidan. Licensed under MIT.&lt;/p&gt;&lt;/div&gt;
        &lt;/li&gt; 
      &lt;/div&gt; 
    &lt;/ul&gt; 
  &lt;/div&gt;
&lt;/div&gt;</pre><p>حصلت على خط الأيقونة الذي استخدمته من Icomoon.</p></div><div id="wmd-preview-section-29"><p>الذي سيحدث الآن: ستحصل JavaScript على اسم ونوع الصفحة المراد فتحها عند نقر القطعة، وبعد ذلك، ووفقًا لنوع الصفحة ستعمل JavaScript على تطبيق أسماء أصناف CSS المناسبة على الصفحة (والتي سنحصل على اسمها أيضًا من السمة <span style="font-family:courier new,courier,monospace;">data-page-name</span>) لفتحها بنمط تحريك معيّن لكل صنف CSS يتم تطبيقه.</p></div><div id="wmd-preview-section-30"><h2 id="تنسيقات-css">تنسيقات CSS</h2><p>أرجو ملاحظة أنّني أستخدم أنماط تنسيق تراعي الأجهزة المحمولة أولًا mobile-first، والتي سنجعلها لاحقًا ذات استجابية responsive عالية ضمن قسم استعلامات الوسائط media queries في CSS.</p><p>سنتناول في البداية التنسيقات الخاصة بالحاوية (عنصر<span style="font-family:courier new,courier,monospace;"> div</span>) والتي ستحوي كامل المثال التوضيحي. سنعرّف تنسيقات عامّة ونتأكّد من ضبط الخاصية perspective بحيث يؤدي ذلك إلى تفعيل الفضاء ثلاثي البعد 3D، وإلّا سيبدو كامل المثال بشكل منبسط أي ثنائي البعد 2D.</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.demo-wrapper { 
  padding: 2em .5em; 
  width: 100%; height:100%; 
  perspective: 3300px; 
  position: relative; 
}</pre><p>لنبدأ الآن بتنسيقات وتحريكات لوح البداية. </p><p>ستُنفَّذ أوّل تحريكة سنطبّقها على لوح البداية عند تحميل الصفحة ضمن متصفّح الويب. سيكون لوح البداية مخفيًّا في يمين الشاشة بادئ الأمر، ثمّ يظهر تدريجيًّا مع الانتقال إلى موقعه الأساسي عند تحميل الصفحة.</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.dashboard { 
  margin: 0 auto; 
  width: 100%; 
  padding: 1em; 
  transform: translateX(200px); 
  opacity:0; 
  animation: start 1s ease-out forwards; 
} 

@keyframes start{   
  0%{ transform: translateX(200px); opacity:0; } 
  50%{ opacity:1; } 
  100%{ transform: translateX(0); opacity:1; } 
}</pre><p>يتضاءل لوح البداية ويختفي عند نقر قطعة منه. حيث ينتقل اللوح على طول محور z، ويتضاءل حجمه، كما تنخفض قيمة الخاصية <span style="font-family:courier new,courier,monospace;">opacity</span> له تدريجيًا حتى تصبح في النهاية تساوي الصفر مما يعطي شعورًا بأنّ اللوح يختفي بالتدريج. أمّا عندما يُغلق المستخدم الصفحة فإنّ لوح البداية يعود للظهور مرّة أخرى.</p></div><div id="wmd-preview-section-32"><p>بالنسبة للأعمدة الثلاثة في لوح البداية فإنّها تظهر تدريجيًّا واحدًا تلو الآخر مع تأخير زمني طفيف بينها. عندما تُغلق الصفحة، سيُضاف اسم صنف CSS لكل عمود (بواسطة JavaScript) وكل من هذه الأصناف ستُفعّل تحريكة بتأخير زمني مُحدّد. </p><p>فيما يلي أصناف CSS والتحريكات المطبّقة على لوح البداية عند نقر القطع tiles وإغلاق الصفحات.</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.fadeOutback{ 
  animation: fadeOutBack 0.3s ease-out 1 normal forwards; 
} 

.fadeInForward-1, .fadeInForward-2, .fadeInForward-3 { 
  opacity:0; 
  transform: translateZ(-5em) scale(0.75); 
  animation: fadeInForward .5s cubic-bezier(.03,.93,.43,.77) .4s normal forwards; 
} 

.fadeInForward-2{ 
  animation-delay: .55s; 
} 

.fadeInForward-3{ 
  animation-delay: .7s; 
} 

@keyframes fadeOutBack{  
  0% {transform: translateX(-2em) scale(1); opacity:1;} 
  70% {transform: translateZ(-5em) scale(0.6); opacity:0.5;} 
  95% {transform: translateZ(-5em) scale(0.6); opacity:0.5;} 
  100% {transform: translateZ(-5em) scale(0); opacity:0;} 
} 

@keyframes fadeInForward{  
  0% {transform: translateZ(-5em) scale(0); opacity:0;} 
  100% {transform: translateZ(0) scale(1); opacity:1;} 
}</pre><p>وبالنسبة لتنسيقات الصفحات:</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.r-page { 
  width: 100%; height: 100%; 
  text-align: center; font-size: 2em; font-weight: 300; 
  position: absolute; 
  right: 0; top: 0; left:0; bottom:0; 
  opacity: 0; 
  color: white; 
  z-index: 10; 
  padding:10px; 
  transform-origin: 100% 0%; 
  transform: rotateY(-90deg) translateZ(5em) 
} 

.s-page { 
  color: white; 
  z-index: 10; 
  text-align: center; font-size: 2em; font-weight: 300; 
} 

.page-content{ 
  overflow-y:auto; 
  max-height:100%; 
  font-size:.6em; 
  padding:.6em; 
  text-align:left; 
} 

.s-page, .r-page{ 
  background-color: white; 
  color:black; 
} 

.page-title { 
  margin: .25em 0; 
  font-weight: 100; font-size: 3em; text-align:center; 
} 

.close-button { 
  font-size: 1.5em; 
  width: 1em; height: 1em; 
  position: absolute; 
  top: .75em; right: .75em; 
  cursor: pointer; 
  line-height: .8em; text-align: center 
}</pre><p>لقد ضبطت الموقع الأصلي لكل صفحة من النوع <span style="font-family:courier new,courier,monospace;">r-page</span> في الفضاء ثلاثي البعد بتدويرها حول محور التراتيب (محور y) بعد ذلك نقل الصفحة بمقدار 5em إلى يسار الشاشة باستخدام الخاصية <span style="font-family:courier new,courier,monospace;">translateZ</span> (النقل على محور z). ينبغي ألّا ننسى أنّه عند تحويل (نقل – تدوير) عنصر في الفضاء ثلاثي البعد فمن الضروري تحويل نظام الإحداثيات الخاص به بنفس الصورة. الذي نريده الآن هو نقل الصفحة بمقدار 5em إلى يسار الشاشة، ولكن لاحظ أنّنا بدلًا من استخدام <span style="font-family:courier new,courier,monospace;">translateX</span> استخدمنا <span style="font-family:courier new,courier,monospace;">translateZ</span>، ويعود سبب ذلك إلى أنّه بعد التحويل الأوّل (الدوران حول محور y) يدور نظام الإحداثيات أيضًا، وهكذا يُشير محور z في هذه الحالة إلى اليسار وليس إلى الأعلى، أمّا محور الفواصل (محور x) فسيشير باتجاه المستخدم.</p></div><div id="wmd-preview-section-34"><p>يكون لجميع الصفحات باستثناء النوع<span style="font-family:courier new,courier,monospace;"> s-page</span> نفس موقع البداية في الفضاء ثلاثي البعد. بالنسبة للصفحات من النوع <span style="font-family:courier new,courier,monospace;">s-page</span> فإنّها تكون بموقع يبعد بما يُعادل -150% يسار الشاشة (واضح أنّها لن تكون مرئية بهذه الحالة)، بحيث أنّها تنزلق لتعود إلى الشاشة عند تفعيل التحريكة الخاصة بها.</p><p>عند نقر قطعة مرتبطة بصفحة ما، فسيُضاف صنف CSS الموافق بواسطة JavaScript إلى الصفحة، بالنتيجة ستحصل الصفحة على اسم صنف CSS يُعرّف التأثير ثلاثي البعد الواجب تطبيقه عليها.</p><p>فيما يلي أسماء أصناف CSS التي تُفعّل عملية فتح وإغلاق الصفحات، بالإضافة إلى التحريكات المعرّفة من أجل كل صنف.</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.openpage{ 
  animation: rotatePageInFromRight 1s cubic-bezier(.66,.04,.36,1.03) 1 normal forwards;
} 

.slidePageLeft{ 
  transform: rotateY(0) translateZ(0); 
  opacity: 1; 
  animation:slidePageLeft .8s ease-out 1 normal forwards; 
} 

.slidePageInFromLeft{ 
  animation: slidePageInFromLeft .8s cubic-bezier(.01,1,.22,.99) 1 0.25s normal forwards; 
} 

.slidePageBackLeft{ 
  opacity: 1; 
  left: 0; 
  animation: slidePageBackLeft .8s ease-out 1 normal forwards; 
}</pre><p>لاحظ أنّني أستخدم الخاصية <span style="font-family:courier new,courier,monospace;">animation</span> <a rel="external nofollow" href="http://www.w3.org/TR/css3-animations/#animation-shorthand-property">بالشكل المختصر</a>. تعود القيمة الأخيرة <span style="font-family:courier new,courier,monospace;">forward</span> ضمن الخاصية <span style="font-family:courier new,courier,monospace;">animation</span> إلى الخاصيّة الفرعية <span style="font-family:courier new,courier,monospace;">animation-fill-mode</span>، وهذه القيمة ضرورية لها، وإلّا ستعود الصفحة إلى حالتها الابتدائية (المغلقة) فور انتهاء التحريكة التي ستُظهر الصفحة. إذًا لكي نُبقي الصفحة مفتوحة، ولكي نكون قادرين على إنشاء تحريكات متلاحقة، يجب على العنصر أن يبقى مُحتفظًا بحالته النهائية المعرّفة ضمن تحركية ما، ومن هذه "الحالة النهائية" يبدأ عمل التحريكة التالية، وهكذا.</p></div><div id="wmd-preview-section-35"><p>فيما يلي التحريكات لأصناف CSS المطبّقة على الصفحات.</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">@keyframes rotatePageInFromRight{ 
  0% {transform:rotateY(-90deg) translateZ(5em);opacity:0} 
  30% {opacity:1} 
  100% {transform: rotateY(0deg) translateZ(0) ; opacity:1} 
} 

@keyframes slidePageLeft{  
  0% {left:0; transform: rotateY(0deg) translateZ(0) ; opacity:1} 
  70% {opacity:1;} 
  100% {opacity:0; left:-150%; transform: rotateY(0deg)} 
} 

@keyframes slidePageInFromLeft{   
  0% {opacity:0; } 
  30% {opacity:1} 
  100% {opacity:1; left:0;} 
} 

@keyframes slidePageBackLeft{   
  0% {opacity:1; left:0; transform: scale(0.95);} 
  10% {transform: scale(0.9);} 
  70% {opacity:1;} 
  100% {opacity:0; left:-150%;} 
}</pre><p>أخيرًا وليس آخرًا، سنُنسّق قطع لوح البداية ونُعرّف الانتقالات والتحريكات المطبّقة عليها عند تحريك مؤشّر الفأرة فوقها. لاحظ أنّ التنسيقات العامّة تُعرّف حجم القطع.</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.tile{ 
  float: left; 
  margin: 0 auto 1%; 
  color: white; 
  font-size: 1.3em; text-align: center; height: 8em; font-weight: 300; 
  overflow: hidden; 
  cursor: pointer;  
  background-color: #fff; 
  color: #333; 
  position:relative; 
  transition: 
  background-color 0.2s ease-out 
} 

.tile-2xbig{ 
  height:16.15em; 
  width:100%; 
} 

.tile-big { 
  width: 100% 
} 

.tile-small { 
  width: 49%; 
  margin-right: 2% 
} 

.tile-small.last { 
  margin-right: 0 
}</pre><p>سيحتوي زوج من القطع على صورة مع عنوان لها، هاتان القطعتان ستحصلان على الصنف <span style="font-family:courier new,courier,monospace;">fig-tile</span> وذلك لتمييز نوعهما في شيفرة JavaScript التي سنراها لاحقًا.</p></div><div id="wmd-preview-section-37"><p>سنحصل على الألوان المستخدمة من أجل النص والخلفية لصفحة ما من الألوان المستخدمة في العنوان، لذلك لا تنسى أن تُعرّفهم. بالنسبة للعنوان إمّا أن يكون ثابتًا أو أن يُعطي شعورًا بالانزلاق عندما يتحرك فوقه مؤشّر الفأرة:</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.tile-caption{ 
  position:absolute; 
  z-index:1; 
  background-color: #455962; 
  color:#fff; 
  font-size:1em; 
  padding:1em; 
  text-align: left; 
} 

.caption-bottom{ 
  left:0; bottom:0; right:0; 
  height:40%; 
} 

.caption-left{ 
  left:-100%; top:0; bottom:0; 
  width:40%; 
  transition: left .3s linear; 
} 

.tile:hover .caption-left{ 
  left:0; 
}</pre><p>بالنسبة للقطع النظامية regular tiles التي لا تملك أي نوع من التحريك، فستغيّر لون خلفيّتها ولون النص عند تحريك الفأرة فوقها. لكي نتأكّد من أنّ النص مُوسّط عموديًا vertically centered في كل قطعة، سنضع في كل قطعة عنصر div يحوي بدوره عنصر فقرة (العنصر <span style="font-family:courier new,courier,monospace;">&lt;p&gt;</span>) يحوي النص. سنستخدم القيمة <span style="font-family:courier new,courier,monospace;">table-cell</span> للخاصية <span style="font-family:courier new,courier,monospace;">display</span> وذلك لتوسيط النص عموديًا ضمن الفقرة:</p></div><div id="wmd-preview-section-38"><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.tile div{ 
  position:absolute; 
  top:0; left:0; right:0; bottom:0; 
  width:100%; height:100%; 
  text-align:center; 
  display:table; 
  padding:0 1em; 
  transition: all .3s ease; 
} 

.tile div p{ 
  display:table-cell; 
  vertical-align:middle; 
}</pre><p>سنترك الحديث عن أنماط التنسيق العامّة للقطع بهدف الاختصار، ولكن ينبغي علينا التأكّد من أنّنا سنعيّن لون النص والخلفية لجميع القطع، حتى تلك التي ستُغطّى بصورة، لأنّ هذه الألوان التي سنحصل عليها باستخدام JavaScript ستُستخدَم لضبط الألوان في الصفحة المرتبطة بها كما أشرنا قبل قليل. دعونا الآن نتحدّث عن التحريكات والانتقالات التي تحدث على قطعة ما.</p></div><div id="wmd-preview-section-39"><p>ستحتوي القطع المزوّدة بنص منزلق على عنصري <span style="font-family:courier new,courier,monospace;">div</span>، سيبدو كل عنصر <span style="font-family:courier new,courier,monospace;">div</span> كوجه أو كتلة منفصلة داخل القطعة. سيكون تموضعًا عنصريًا <span style="font-family:courier new,courier,monospace;">div</span> مطلقًا positioned absolutely وسيتحرّكان عند تحرّك الفأرة فوقهما وذلك وفقًا لاتجاه الانزلاق المطلوب. فلكي ينزلق نص القطعة إلى الأعلى عندما يحوم مؤشّر الفأرة فوقه سنطبّق الصنف <span style="font-family:courier new,courier,monospace;">slideTextUp</span>:</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.slideTextUp div:nth-child(2){ 
  top:100%; 
} 

.slideTextUp:hover div{ 
  transform: translateY(-100%); 
} 

.tile-1 p{ 
  font-size:1.3em; 
}</pre><p>وبشكل مماثل ولكي ينزلق نص القطعة إلى اليسار وإلى اليمين سنطبّق الصنفين <span style="font-family:courier new,courier,monospace;">slideTextLeft</span> و <span style="font-family:courier new,courier,monospace;">slideTextRight</span> على الترتيب.</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.slideTextRight div:first-child{ 
  left:-100%; 
} 

.slideTextRight:hover div{ 
  transform: translateX(100%); 
} 

.slideTextLeft div:nth-child(2){ 
  left:100%; 
} 

.slideTextLeft:hover div{ 
  transform: translateX(-100%); 
}</pre><p>أمّا بالنسبة لزوج القطع التي ستنقلب، فسيكون لهما تأثير مختلف عندما يحوم مؤشّر الفأرة فوقهما، فهما يدوران ليُظهران الوجه الخلفي. يُعتبر هذا التأثير نوعًا بسيطًا جدًا من تأثير "انقلاب البطاقة" card flip. لن نخوض في تفاصيل هذا التأثير.</p></div><div id="wmd-preview-section-41"><p>لإنجاز هذا التأثير، سنطبّق الصنف <span style="font-family:courier new,courier,monospace;">rotate3d</span> إلى القطعة التي نريد أن تنقلب. بالنسبة للقطعة التي نريد أن تنقلب عموديًّا، سنطبّق الصنف <span style="font-family:courier new,courier,monospace;">rotate3dy</span>، أمّا بالنسبة للانقلاب الأفقي سنطبّق الصنف <span style="font-family:courier new,courier,monospace;">rotate3dx</span> (مع الانتباه إلى وجوب وجود الصنف <span style="font-family:courier new,courier,monospace;">rotate3d</span> في كلتا الحالتين). انظر إلى تنسيقات CSS التالية:</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.rotate3d{ 
  perspective: 800px; 
  overflow: visible; 
}             

.faces{ 
  transform-style: preserve-3d; 
  transition: transform 1s; 
} 

.faces div { 
  display: block; 
  position: absolute; 
  top:0; left:0; right:0; bottom:0; 
  width: 100%; height: 100%; 
  backface-visibility: hidden; 
}</pre><p>لاحظ بأنّه عند تحريك مؤشّر الفأرة فوقهما بالتتالي، فسيظهر وجه أحدهما في حين ستظهر خلفية الآخر بنفس الوقت.</p></div><div id="wmd-preview-section-42"><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.rotate3dY .back{ 
  transform: rotateY( 180deg ); 
} 

.rotate3dX .back{ 
  transform: rotateX( 180deg ); 
}</pre><p>وعندما يحوم مؤشّر الفأرة فوق القطعة فإنّ أي عنصر div يخضع للصنف faces. سيُدوّر ليُظهر وجهه الخلفي:</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.rotate3dY:hover .faces:hover{ 
  transform: rotateY( 180deg ); 
} 

.rotate3dX:hover .faces:hover{ 
  transform: rotateX( 180deg ); 
}
</pre></div><div id="wmd-preview-section-44"><p>لتنسيق القطع في الدوران ثلاثي البعد، ينبغي الانتباه إلى ضبط لوني الخلفية والنص للوجه الأمامي (ذو الصنف front.) بحيث يمكن الحصول على هذين اللونين واستخدمهما لاحقًا في الصفحة المتربطة بالقطعة عند فتحها.</p><p>لنعرّف الآن تنسيقات تفاعلية للوح Dashboard. ستكون أعمدة اللوح ذات عرض كامل على الشاشات الصغيرة في البداية (تذكّر أنّنا نراعي متطلبات تصميم الأجهزة المحمولة أولًا mobile-first)، في حين أنّ هذه الأعمدة ستكون بجانب بعضها البعض في الشاشات الكبيرة.</p><pre data-pbcklang="css" data-pbcktabsize="4" class="css ipsCode prettyprint">.col1, .col2, .col3 { 
  width: 99%; 
  margin: 1em auto 
} 

@media screen and (min-width: 43.75em) {  
  .col1, .col2, .col3 { 
    float: left; 
    margin-right: 1%; 
    width: 49% 
  } 

  .page-title{ 
    font-size:2.5em; 
  } 

  .page-content{ 
    font-size:1em; 
  } 

  .close-button{ 
    font-size:2em; 
  } 
} 

@media screen and (min-width: 64em) {   
  .col1, .col2, .col3 { 
    float: left; 
    margin-right: .5%; 
    width: 31% 
  } 

  .col3 { 
    margin-right: 0 
  } 

  .col1 { 
    margin-left: 2em 
  } 

  .page-title{ 
    font-size:3.5em; 
  } 
}
</pre></div><div id="wmd-preview-section-46"><h2 id="جافا-سكريبت-javascript">جافا سكريبت JavaScript</h2><p>ستُعالَج جميع أحداث النقر عن طريق JavaScript. سنستخدم مكتبة jQuery لهذه الغاية، وسنضبط معالج حدث event handler النقر لكل قطعة على لوح البداية، فعندما ينقر المستخدم على قطعة ما، يعمل معالج حدث النقر الموافق على الحصول على اسم ونوع الصفحة المرتبطة بهذه القطعة وذلك من السمتين<span style="font-family:courier new,courier,monospace;"> data-page-name</span> و <span style="font-family:courier new,courier,monospace;">data-page-type </span>على الترتيب، حيث سنستخدم هذه المعلومات لفتح الصفحة المطلوبة.</p><p>أمّا عند إغلاق الصفحة عند النقر زر الإغلاق لها، فسيعمل معالج حدث النقر لهذا الزر على تطبيق أسماء الأصناف المناسبة لإغلاق الصفحة.</p><p>بالإضافة لذلك، ولكي نُكسِب كل صفحة لون خلفية ولون نص مماثل لتلك التي للقطعة المرتبطة بها، فإنّنا سنطوف بدايةً على جميع القطع، ونحصل على ألوانها، ثمّ نُطبّق هذه الألوان على الصفحات المرتبطة معها. في حال كان لقطعة ما الصنف <span style="font-family:courier new,courier,monospace;">rotate3d</span>، فإنّنا سنبحث عن لون الخلفية لوجه face القطعة، ومن ثمّ نطبّق هذا اللون على الصفحة المرتبطة معها.</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">function(){ 
  $('.tile').each(function(){ 
    var $this= $(this), 
        page = $this.data('page-name'), 
        bgcolor = $this.css('background-color'), 
        textColor = $this.css('color');
 
    if($this.hasClass('rotate3d')) { 
      frontface = $this.find('.front'); 
      bgcolor = frontface.css('background-color'); 
      textColor = frontface.css('color'); 
    } 

    if($this.hasClass('fig-tile')) { 
      caption = $this.find('figcaption'); 
      bgcolor = caption.css('background-color'); 
      textColor = caption.css('color'); 
    } 

    $this.on('click',function(){ 
      $('.'+page).css({'background-color': bgcolor, 'color': textColor}) .find('.close-button').css({'background-color': textColor, 'color': bgcolor}); 
    }); 
  }); 

  function showDashBoard(){ 
    for(var i = 1; i &lt;= 3; i++) { 
      $('.col'+i).each(function(){ 
        $(this).addClass('fadeInForward-'+i).removeClass('fadeOutback'); 
      }); 
    } 
  } 

  function fadeDashBoard(){ 
    for(var i = 1; i &lt;= 3; i++) { 
      $('.col'+i).addClass('fadeOutback').removeClass('fadeInForward-'+i); 
    } 
  } 

  $('.tile').each(function(){ 
    var $this= $(this), 
        pageType = $this.data('page-type'), 
        page = $this.data('page-name'); 

    $this.on('click',function(){ 
      if(pageType === "s-page"){ 
        fadeDashBoard(); 
        $('.'+page).addClass('slidePageInFromLeft').removeClass('slidePageBackLeft'); 
      } 
      else{ 
        $('.'+page).addClass('openpage'); 
        fadeDashBoard(); 
      } 
    }); 
  }); 

  $('.r-close-button').click(function(){ 
    $(this).parent().addClass('slidePageLeft') .one('webkitAnimationEnd oanimationend msAnimationEnd animationend', function(e) { 
      $(this).removeClass('slidePageLeft').removeClass('openpage'); 
    }); 
    showDashBoard(); 
  }); 

  $('.s-close-button').click(function(){ 
    $(this).parent().removeClass('slidePageInFromLeft').addClass('slidePageBackLeft'); 
    showDashBoard(); 
  }); 
})();</pre><p>وبهذا نكون قد وصلنا إلى نهاية الدرس. أرجو أن يكون ممتعًا ومفيدًا.</p></div><div id="wmd-preview-section-47"><p>بإمكانك استعراض مثال حيّ لهذا الدّرس <a rel="external nofollow" href="https://sarasoueidan.com/demos/windows8-animations/">من هنا</a>. </p><p>أما الشيفرة المصدرية فهي مُتوفّرة في <a rel="external nofollow" href="https://github.com/sarasoueidan/windows8-animations">هذا المُستودع</a>.</p><p>ترجمة -وبتصرّف- للمقال <a rel="external nofollow" href="https://sarasoueidan.com/blog/windows8-animations">How to Create Windows-8-like animations with CSS3 and JQuery</a> لصاحبته Sara Soueidan.</p></div>
]]></description><guid isPermaLink="false">243</guid><pubDate>Sun, 17 Jan 2016 16:04:21 +0000</pubDate></item><item><title>&#x62C;&#x62F;&#x627;&#x648;&#x644; html &#x630;&#x627;&#x62A; &#x631;&#x623;&#x633;&#x64A;&#x629; &#x648;&#x623;&#x639;&#x645;&#x62F;&#x629; &#x62B;&#x627;&#x628;&#x62A;&#x629; &#x628;&#x627;&#x633;&#x62A;&#x62E;&#x62F;&#x627;&#x645; jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%AC%D8%AF%D8%A7%D9%88%D9%84-html-%D8%B0%D8%A7%D8%AA-%D8%B1%D8%A3%D8%B3%D9%8A%D8%A9-%D9%88%D8%A3%D8%B9%D9%85%D8%AF%D8%A9-%D8%AB%D8%A7%D8%A8%D8%AA%D8%A9-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-jquery-r151/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_08/sticky-headers-jquery_(1).png.a4924364c8a13e008fe4c5fc1e3d99ed.png" /></p>

<p>رؤوس الجداول الثابتة ليست بالأمر الجديد في مواقع الويب. على عكس الورق، حيث يستطيع القارئ نقل نظره بسرعة إلى أعلى الشاشة ليعرف في أي عمود هو، لكن أبعاد الشاشة تجعل من قراءة الجداول الطويلة أمر صعبا.</p><p style="text-align: center;"><a href="https://academy.hsoub.com/uploads/monthly_2015_08/sticky-headers-jquery_(1).png.8f726fb7b19f95d8906f2553395fd530.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="4129" src="https://academy.hsoub.com/uploads/monthly_2015_08/sticky-headers-jquery_(1).thumb.png.371a72713d32e084d58b29a666e3c3d0.png" class="ipsImage ipsImage_thumbnailed" alt="sticky-headers-jquery_(1).thumb.png.371a"></a></p><p>رؤوس الجداول الثابتة، كما يشير اسمها، تبقى ثابتة في أعلى الجدول حتى وإن نزلنا أكثر في الجدول. يساعد الأمر في إبقاء أسماء الأعمدة دوما في متناول اليد، حتى لا يجبر المستخدم على الرجوع إلى أعلى الجدول كل مرة من أجل النظرة ثم الرجوع مجددا.</p><p>يوجد العديد من <a rel="external nofollow" href="https://github.com/kingkool68/stickyHeader">سكربتات</a> <a rel="external nofollow" href="https://github.com/jmosbech/StickyTableHeaders">وإضافات</a> <a rel="external nofollow" href="http://fixedheadertable.com/">jQuery</a> التي تعمل بطريقة فعالة وخالية من الأخطاء، فهم ليسوا الحل المثالي لجميع المشاكل الممكنة، ففي بعض الحالات، على الجداول أن تتبع قواعد هيكلة لم تحسب لها الإضافات حساب، كالجداول التي تسمح بإظهار مؤشر التحرك (scroll bar) عندما لا تكفي المساحة لإظاهر الجدول.</p><p>هذا المقال لن يكون الحل المثالي لجميع المواقف، ولكنه سيكون حلا لأغلب المشاكل الشائعة.</p><h2>حل باستخدام CSS فحسب عبر <code>position: sticky</code>؟</h2><p>تملك CSS حلا مناسبا لهذه المشكلة وهو عبر استخدام <code>postion: sticky</code>. لكن للأسف، الحل غير مدعوم في chrome رغم أنه كان مدعوما سابقا، إلا أنّ فريق التطوير قام بإلغاء الخاصية تماما منه إلى أجل غير معلوم. ولأننا لا نستطيع التضحية بكل مستخدمي متصفح chrome فعلينا إيجاد حل بديل للمشكلة.</p><h2>حل عبر استخدام jQuery</h2><p>حل jQuery هو بسيط جدا، لكن قبل أن نبدأ باستخدام، علينا أن نلقي نظرة على كيف يكون جدول ما صحيحا من حيث الهيكلة:</p><pre data-pbcklang="html" data-pbcktabsize="" class="html ipsCode prettyprint">&lt;table&gt;
    &lt;thead&gt;
        &lt;tr&gt;
            &lt;th&gt;&lt;/th&gt;
            &lt;!-- more columns are possible --&gt;
        &lt;/tr&gt;
    &lt;/thead&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;/td&gt;
            &lt;!-- more columns are possible --&gt;
        &lt;/tr&gt;
        &lt;!-- more rows are possible --&gt;
    &lt;/tbody&gt;
    &lt;tfoot&gt;&lt;!-- هذا الجزء اختياري --&gt;
        &lt;tr&gt;
            &lt;td&gt;&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tfoot&gt;
&lt;/table&gt;</pre><h4>ما الذي نحاول تحقيقه؟</h4><p>سنحاول جعل السكربت يدعم أغلب المشاكل الشائعة والتي هي:</p><ul><li>الاستخدام الأساسي: رأس الجدول يكون ثابتا.</li><li>رؤوس الجداول الأفقية والعمودية.</li><li>الجداول العريضة:<ul><li><strong>العمود الأفقي:</strong> إذا كان هنالك العديد من الأعمدة التي لا يمكن إظهارها في عرض الصفحة، فسنستخدم عمودا جانبيا ثابتا.</li><li><strong>الصف العمودي:</strong> وهو الاستخدام الأساسي، أن يكون الرأس العلوي ثابتا عند النزول بالجدول.</li><li><strong>كلا العمودين</strong>: حيث نثبت كل من العمود والصف.</li></ul></li></ul><h3>CSS من أجل البدء</h3><p>رغم أننا سنستخدم حلاّ عبر جافاسكربت، فإن CSS ضرورية من أجل تنفيذ الأمر:</p><pre data-pbcklang="css" data-pbcktabsize="" class="css ipsCode prettyprint">.sticky-wrap {
    overflow-x: auto;
    position: relative;
    margin-bottom: 1.5em;
    width: 100%;
}
.sticky-wrap .sticky-thead,
.sticky-wrap .sticky-col,
.sticky-wrap .sticky-intersect {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    transition: all .125s ease-in-out;
    z-index: 50;
    width: auto; /* Prevent table from stretching to full size */
}
    .sticky-wrap .sticky-thead {
        box-shadow: 0 0.25em 0.1em -0.1em rgba(0,0,0,.125);
        z-index: 100;
        width: 100%; /* Force stretch */
    }
    .sticky-wrap .sticky-intersect {
        opacity: 1;
        z-index: 150;
    }
    .sticky-wrap .sticky-intersect th {
        background-color: #666;
        color: #eee;
    }
.sticky-wrap td,
.sticky-wrap th {
    box-sizing: border-box;
}</pre><p><strong>ملاحظة:</strong> من المهم جدا نقل كل CSS الخاصة بوسم <span style="font-family:courier new,courier,monospace;"><code>&lt;table&gt;</code></span> إلى <code>sticky-wrap</code>. هذا حتى يتاح لنا التحكم بها مباشرة عبر jQuery.</p><p>لنقل أنك تملك CSS التالي:</p><pre data-pbcklang="css" data-pbcktabsize="" class="css ipsCode prettyprint">table {
    margin: 0 auto 1.5em;
    width: 75%;
}</pre><p>كل ما عليك فعله ببساطة هو نقلها إلى<span style="font-family:courier new,courier,monospace;"> <code>sticky-wrap.</code></span> :</p><pre data-pbcklang="css" data-pbcktabsize="" class="css ipsCode prettyprint">.sticky-wrap {
    overflow-x: auto; /* Allows wide tables to overflow its containing parent */
    position: relative;
    margin: 0 auto 1.5em;
    width: 75%;
}</pre><h3>استخدام جافاسكربت</h3><p>سوف نقوم بتنفيذ دالتنا على كل جدول موجود في الصفحة، الأهم من هذا سنتفقد إن كان الجدول يملك <span style="font-family:courier new,courier,monospace;"><code>&lt;thead&gt;</code></span> وإن كان هذا الأخير يحتوي على الأقل على <span style="font-family:courier new,courier,monospace;"><code>&lt;th&gt;</code></span> واحد. إن لم تتحق الشروط، فستتجاهل دالتنا هذا الجدول.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$(function () {
    // هنا نقوم باختيار جميع الجداول في الصفحة
    // لكنك حر بتحديد الجداول التي تريدها
    $('table').each(function () {
        if($(this).find('thead').length &gt; 0 &amp;&amp; $(this).find('th').length &gt; 0) {
            // بقية السكربت تكون هنا
        }
    });
});</pre><h3>الخطوة 1: نسخ عنصر <code>&lt;thead&gt;</code></h3><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// تحديد المتغيرات وبعض الاختصارات
    var $t     = $(this),
        $w     = $(window),
        $thead = $(this).find('thead').clone(),
        $col   = $(this).find('thead, tbody').clone();</pre><h3>الخطوة 2: تغليف الجدول ونسخه</h3><p>من أجل دعم الحالات التي يكون فيها الجدول أعرض من ماهو مسموح (أي عندما يكون عندما عدد كبير من الأعمدة، أو أعمدة طويلة، فنحوي الجدول في <code>&lt;div&gt;</code> حتى نسمح لك بأن يكون scrollable على المحور الأفقي:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// احتواء الجدول
$t
.addClass('sticky-enabled')
.css({
    margin: 0,
    width: '100%';
})
.wrap('&lt;div class="sticky-wrap" /&gt;');

// تفقد إن كنا قد حددنا بأن يكون الجدول قابلا للتمرير (scroll) على المحور الأفقي
if($t.hasClass('overflow-y')) $t.removeClass('overflow-y').parent().addClass('overflow-y');

// صنع رأس جدول جديد بصنف .stiky-head
$t.after('&lt;table class="sticky-head" /&gt;')

// إذا كان &lt;tbody&gt; يحتوي على &lt;th&gt; فنقوم بصنع عمود جديدة ليكون الخانة أعلى الجدول
if($t.find('tbody th').length &gt; 0) {
    $t.after('&lt;table class="sticky-col" /&gt;&lt;table class="sticky-intersect" /&gt;');
}
// اختصارات
var $stickyHead  = $(this).siblings('.sticky-thead'),
    $stickyCol   = $(this).siblings('.sticky-col'),
    $stickyInsct = $(this).siblings('.sticky-intersect'),
    $stickyWrap  = $(this).parent('.sticky-wrap');</pre><h3>الخطوة 3: وضع محتوى الجداول المنسوخة</h3><p>ما سنقوم به الآن هو أخذ المحتوى المنسوخ من الجدول الأصلي ووضعه في الجداول الجديدة التي ستكون ملتصقة:</p><ol><li>رأس الجدول الجديد سيستلم كامل المحتوى من عنصر <code>&lt;thead&gt;</code> المنسوخ.</li><li>الأعمدة الملتصقة ستستلم المحتوى من أول عنصر <code>&lt;th&gt;</code> من <code>&lt;thead&gt;</code> وكل عناصر <code>&lt;th&gt;</code> المتبقية من <code>&lt;tbody&gt;</code>.</li><li>اندماج العمود مع الصف (أيّ الخانة المشتركة بين العمود والصف) ستأخذ محتوى من خلال أعلى خانة على يمين الجدول (بافتراض أننا نتعامل مع الصفحة على أساس RTL).</li></ol><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// StickyHead يحصل على المحتوى من &lt;thead&gt;

    $stickyHead.append($thead);

    $stickyCol
    .append($col)
        .find('thead th:gt(0)').remove()
        .end()
        .find('tbody td').remove();

    // StickyIntersect يحصل على المحتوى من &lt;th&gt; في &lt;thead&gt;

    $stickyInsct.html('&lt;thead&gt;&lt;tr&gt;&lt;th&gt;'+$t.find('thead th:first-child').html()+'&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;');</pre><h3>الخطوة 4: الدوال</h3><p>هنا يأتي أهم جزء من السكربت الخاص بنا، سنحدد أيّ دوال يجب أن تنفذ من أجل أن يعمل السكربت بشكل صحيح:</p><ol><li><strong>دالة من أجل تحديد عرض</strong> عناصر <span style="font-family:courier new,courier,monospace;"><code>&lt;th&gt;</code></span> في رأس الجدول المنسوخ، بما أننا نسخنا عنصر <span style="font-family:courier new,courier,monospace;"><code>&lt;thead&gt;</code></span> فحسب، فعرض رأس الصفحة المنسوخ الكلي لن يكون عرض رأس الصفحة الفعلي، لأن عرض <span style="font-family:courier new,courier,monospace;">&lt;tbody&gt;</span> لم يتم إضافته حيث لا نعلم هل سيؤثر على رأس الصفحة أو لا.</li><li><strong>دالة من أجل تحديد مكان رأس الصفحة الثابت</strong> حتى نقوم بتحديث بُعد رأس الصفحة المنسوخ الأفقي، الذي قمنا بتحديد <span style="font-family:courier new,courier,monospace;"><code>position: absolute</code></span> عندما نبدأ بتمرير شريط التقدم داخل الجدول.</li><li><strong>دالة من أجل تحديد مكان العمود الجانبي الثابت</strong> ولها نفس حالة تثبيت رأس الصفحة.</li><li><p><strong>دالة من أجل حساب المساحة المتبقية</strong> وسنقوم بشرح هذه الدالة لاحقا بشكل أعمق.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint" style="text-align: left;">    // Function 1: setWidths()
// Purpose: To set width of individually cloned element
var setWidths = function () {
        $t
        .find('thead th').each(function (i) {
            $stickyHead.find('th').eq(i).width($(this).width());
        })
        .end()
        .find('tr').each(function (i) {
            $stickyCol.find('tr').eq(i).height($(this).height());
        });


        // Set width of sticky table head
        $stickyHead.width($t.width());


        // Set width of sticky table col
        $stickyCol.find('th').add($stickyInsct.find('th')).width($t.find('thead th').width())


    },
// Function 2: repositionStickyHead()
// Purpose: To position the cloned sticky header (always present) appropriately
    repositionStickyHead = function () {
        // Return value of calculated allowance
        var allowance = calcAllowance();


        // Check if wrapper parent is overflowing along the y-axis
        if($t.height() &gt; $stickyWrap.height()) {
            // If it is overflowing
            // Position sticky header based on wrapper's scrollTop()
            if($stickyWrap.scrollTop() &gt; 0) {
                // When top of wrapping parent is out of view
                $stickyHead.add($stickyInsct).css({
                    opacity: 1,
                    top: $stickyWrap.scrollTop()
                });
            } else {
                // When top of wrapping parent is in view
                $stickyHead.add($stickyInsct).css({
                    opacity: 0,
                    top: 0
                });
            }
        } else {
            // If it is not overflowing (basic layout)
            // Position sticky header based on viewport scrollTop()
            if($w.scrollTop() &gt; $t.offset().top &amp;&amp; $w.scrollTop() &lt; $t.offset().top + $t.outerHeight() - allowance) {                 // When top of viewport is within the table, and we set an allowance later
                // Action: Show sticky header and intersect, and set top to the right value
                $stickyHead.add($sticktInsct).css({
                    opacity: 1,
                   top: $w.scrollTop() - $t.offset().top
                });
             } else {
                 // When top of viewport is above or below table
                 // Action: Hide sticky header and intersect
                 $sticky.add($stickInsct).css({
                     opacity: 0,
                     top: 0
                 });
             }
        }
    },
// Function 3: repositionStickyCol()
// Purpose: To position the cloned sticky column (if present) appropriately
    repositionStickyCol = function () {
        if($stickyWrap.scrollLeft() &gt; 0) {
            // When left of wrapping parent is out of view
            // Show sticky column and intersect
            $stickyCol.add($stickyInsct).css({
                opacity: 1,
                left: $stickyWrap.scrollLeft()
            });
        } else {
            // When left of wrapping parent is in view
            // Hide sticky column but not the intersect
            // Reset left position
            $stickyCol
            .css({ opacity: 0 })
            .add($stickyInsct).css({ left: 0 });
        }
    },
// Function 4: calcAllowance()
// Purpose: Return value of calculated allowance
     calcAllowance = function () {
         var a = 0;


         // Get sum of height of last three rows
         $t.find('tbody tr:lt(3)').each(function () {
             a += $(this).height();
         });


         // Set fail safe limit (last three row might be too tall)
         // Set arbitrary limit at 0.25 of viewport height, or you can use an arbitrary pixel value
         if(a &gt; $w.height()*0.25) {
            a = $w.height()*0.25;
        }


        // Add height of sticky header itself
        a += $sticky.height();


        return a;
    };
}</pre></li></ol><p>والآن سنقوم بشرح ما قمنا به في الدالة الرابعة، نحن لا نريد من رأس الجدول أن يلحقنا إلى أسفل الجدول، فالأمر غير ضروري وقد يغطي لنا آخر سطر من الجدول، لذا من الضروري إبقاء مساحة فارغة في الأسفل.</p><p>حسب ما جربت، فقد اكتشفت أننا لا نحتاج لرأس الجدول عندما نصل لأخر 3 سطور من الجدول لأن تركيزنا انتقل على المحتوى الآن.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$t.find('tbody tr:lt(4)').each(function () {
    allowance += $(this).height();
});</pre><h3>الخطوة 5: ربط كل شيء</h3><p>والآن قد انتهينا من تعريف كل الدوال اللازمة، كل ما تبقى هو ربط المتفقدات أو (Event handlers) مع عنصر<span style="font-family:courier new,courier,monospace;"><code>(window)$</code>.</span></p><ol><li><strong>عندما يجهز الـDOM</strong> نقوم بالحسابات الأولية للعرض.</li><li><strong>عندما تحمل كامل المعلومات</strong> نقوم بحساب الأبعاد مرة أخرى، هذه الخطوة مهمة لأن جدولك قد يحتوي على أشياء تحمل بعد الـ DOM مثل الصور وخطوط الويب.</li><li><strong>عندما يتم التمرير في الحاوي الرئيسي</strong> ولكن هذا سيحدث في حالة كان المحتوى أكبر من عرض الحاوي، حينها نريد إعادة تغيير مكان العمود الرئيسي.</li><li><strong>عندما يتم تصغير نافذة المتصفح</strong> نريد إعادة حساب العرض.</li><li><strong>عندم يتم النزول في المتصفح</strong> نريد أن نغير مكان رأس الجدول.</li></ol><p>يمكن تلخيص ما قلناه للتو في الكود التالي. يجدر الذكر أن أحداث التصغير والتمرير يتم التحكم بهما باستخدام إضافة <a rel="external nofollow" href="http://benalman.com/projects/jquery-throttle-debounce-plugin/">throttle+debounce</a>.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// #1: <strong>DOM<strong style="line-height: 20.3636360168457px; text-align: right;">عندما يجهز الـ</strong></strong>
setWidths();

// #2: نراقب الحاوي في حال حدوث تمرير فيه
$t.parent('.sticky-wrap').scroll($.throttle(250, function() {
    repositionStickyHead();
    repositionStickyCol();
}));

// الآن نربط ما قمنا بعنصر $(window)
$w
// #3: عندما يتم تحميل كامل المحتويات
.load(setWidths)
// #4: عندما يتم تصغير النافذة
// قمنا باستخدام throttle هنا حتى لا يتم إطلاق الحدث أكثر من مرة (في الوضع الافتراضي يتم إطلاق الحدث من أجل كل جزء يتم تصغيره، هنا ننتظر حتى ينتهي التصغير كاملا ثم نطلق)
.resize($.throttle(250, function () {
    setWidths();
    repositionStickyHead();
    repositionStickyCol();
})
// #5: عندما يتم النزول في النافذة
// استخدمنا throttle حتى لا يتم إطلاق الدالة كثيرا
.scroll($.throttle(250, repositionStickyHead);</pre><p>وانتيهنا، كان هذا كل شيء!</p><h2>النقاش</h2><p>نحن نعرف أن لاشيء كامل، لذا سنناقش الطرق الأخرى التي تملك محاسن على هذه الطريقة ومساوئها ولم استخدمنا هذه الطريقة.</p><h3>استخدام <code>position: fixed</code></h3><p>استخدام هذه الطريقة قد يبدو مغريا لسبيين:</p><ol><li><strong>لا يوجد حاجة لحسابات</strong> من أجل رأس الجدول، لأن العنصر المثبت (fixed) يقع خارج الصفحة الفعلية وسيبقى ثابتا في مكانه.</li><li><strong>نتجنب البطء في الحسابات</strong> هذا لأن العناصر الثابتة تلاحق الجدول ولا تثبت معه، لأننا نقوم بالحساب في فترات ثابتة (عبر throttle) وبالتالي سيظهر أن العنصر الثابت غير متجاوب وبالتالي غير طبيعي.</li></ol><p>لكن المشكلة في هذه الطريقة هي أننا نزيل العنصر من رونق الصفحة، ففي حالة تجاوز عرض الجدول العرض المسموح وأصبح من الضروري إضافة scroll فإن رأس <strong>لن يلحق المحتوى على المحور الأفقي</strong> لأنه ثابت في الصفحة. وهذا سبب كبير لا يسمح لنا باستخدام أغلب إضافات jQuery التي تقدم هذه الخواص. وكتبت هذه الدورة من أجل إصلاح هذا الأمر بالتحديد.</p><h3>استخدام <code>position: sticky</code></h3><p>الخاصية الجديدة مناسبة للأمر، في الواقع لقد بنيت من أجل هذا الأمر في الحسبان، المشكلة فيها أنها غير مدعومة من متصفح chrome (سبق وكانت مدعومة ولكن أزيل الدعم كليا) وبذلك تفقد كل الزوار من هذا المتصفح.</p><h2>مثال حي:</h2><p data-height="268" data-theme-id="0" data-slug-hash="avovoo" data-default-tab="result" data-user="HsoubAcademy" class="codepen">See the Pen <a rel="external nofollow" href="http://codepen.io/HsoubAcademy/pen/avovoo/">avovoo</a> by Hsoub Academy (<a rel="external nofollow" href="http://codepen.io/HsoubAcademy">@HsoubAcademy</a>) on <a rel="external nofollow" href="http://codepen.io">CodePen</a>.</p><script async src="https://assets.codepen.io/assets/embed/ei.js"></script><p>ترجمة -وبتصرف- للمقال: <a rel="external nofollow" href="http://tympanus.net/codrops/2014/01/09/sticky-table-headers-columns/">Sticky Table Headers &amp; Columns</a> لصاحبه Terry Mun.</p>
]]></description><guid isPermaLink="false">151</guid><pubDate>Wed, 26 Aug 2015 22:39:09 +0000</pubDate></item><item><title>&#x643;&#x64A;&#x641; &#x62A;&#x646;&#x634;&#x626; &#x634;&#x628;&#x643;&#x629; &#x62E;&#x644;&#x627;&#x64A;&#x627; &#x645;&#x646;&#x632;&#x644;&#x642;&#x629; Slidable Grid &#x639;&#x646; &#x637;&#x631;&#x64A;&#x642; jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D9%83%D9%8A%D9%81-%D8%AA%D9%86%D8%B4%D8%A6-%D8%B4%D8%A8%D9%83%D8%A9-%D8%AE%D9%84%D8%A7%D9%8A%D8%A7-%D9%85%D9%86%D8%B2%D9%84%D9%82%D8%A9-slidable-grid-%D8%B9%D9%86-%D8%B7%D8%B1%D9%8A%D9%82-jquery-r127/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_07/iquery-slideable-grid.png.67cbd7933f5b347c94bcf00f213c452b.png" /></p>

<p>تعد شبكة الخلايا المنزلِقة Slidable grid وسيلة رائعة وجذابة لعرض أجزاء عدة من المعلومات في نفس المساحة؛ فتنزلق كل خلية من الشبكة عند النقر أو الحومان Hover وتعرِض محتوى إضافيا.</p><p style="text-align: center;"><a href="https://academy.hsoub.com/uploads/monthly_2015_07/iquery-slideable-grid.png.bdaebaa70347375674fc2246b52f7014.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="3286" src="https://academy.hsoub.com/uploads/monthly_2015_07/iquery-slideable-grid.thumb.png.85c3d470b928ff376779c5b19eb2c37c.png" class="ipsImage ipsImage_thumbnailed" alt="iquery-slideable-grid.thumb.png.85c3d470"></a></p><p>سنتطرق خلال هذا الدرس إلى عملية إنشاء شبكة خلايا منزلقة ابتداءً من وسوم HTML الضرورية، التنسيق وجعل الشبكة متجاوبة Responsive؛ مع إضافة خطوط أيقونات الويب. سنعرِض أيضا لكيفيّة استخدام jQuery لإضافة بعض التأثيرات على شبكة الخلايا.</p><p>هكذا ستبدو شبكة الخلايا المنزلِقة بعد اكتمال الدّرس.</p><div class="figure" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_07/559def134a215_01_.gif.b601e9b5ef188538695273cc1cb6c8b8.gif"><img data-fileid="3272" class="ipsImage ipsImage_thumbnailed" alt="559def134f6f9_01_.thumb.gif.cee3b5568389" src="https://academy.hsoub.com/uploads/monthly_2015_07/559def134f6f9_01_.thumb.gif.cee3b5568389a8b447f0842e333cd502.gif"></a></div><h2 id="إنشاء-الشبكة-في-html">إنشاء الشبكة في HTML</h2><p>في ما يلي وسوم HTML المستعملة لإنشاء الشبكة. سنشرح عملها بالمختصر. نحتاج لعنصر تغليف Wrapping يحيط بالشبكة، ثم أجزاء مستقلة بتموضع نسبي Relative positioning داخل عنصر التغليف. تمثل هذه الأجزاء الخلايا المرئية المكونة للشبكة. توجد داخل كل خليّة مساحتان بتموضع مطلق Absolute تملأ كل واحدة منهما طول وعرض الخلية تماما. سنضيف تأثيرات إلى كل من المساحتيْن بحيث تكون كل مساحة إما خارج مجال الرؤية في الصفحة أو مرئية.</p><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">&lt;div id="services" class="cf"&gt;
  &lt;section class="service"&gt;
    &lt;div class="service-icon"&gt;&lt;span class="icon-web"&gt;&lt;/span&gt;&lt;br/&gt;التصميم للويب&lt;/div&gt;
    &lt;div class="service-description"&gt;&lt;p&gt;تقديم لطيف حول التصميم للويب وما نقدمه من خِدْمات في هذا المجال&lt;/p&gt;&lt;/div&gt;
  &lt;/section&gt;
  
  &lt;section class="service"&gt;
    &lt;div class="service-icon"&gt;&lt;span class="icon-graphic"&gt;&lt;/span&gt;&lt;br/&gt;التصميم الغرافيكي&lt;/div&gt;
    &lt;div class="service-description"&gt;&lt;p&gt; ... &lt;/p&gt;&lt;/div&gt;
  &lt;/section&gt;

  &lt;section class="service"&gt;
    &lt;div class="service-icon"&gt;&lt;span class="icon-logo"&gt;&lt;/span&gt;&lt;br/&gt;تصميم الشعارات&lt;/div&gt;
    &lt;div class="service-description"&gt;&lt;p&gt; ... &lt;/p&gt;&lt;/div&gt;
  &lt;/section&gt;

  &lt;section class="service"&gt;
    &lt;div class="service-icon"&gt;&lt;span class="icon-dev"&gt;&lt;/span&gt;&lt;br/&gt;التطوير للويب&lt;/div&gt;
    &lt;div class="service-description"&gt;&lt;p&gt; ... &lt;/p&gt;&lt;/div&gt;
  &lt;/section&gt;

  &lt;section class="service"&gt;
    &lt;div class="service-icon"&gt;&lt;span class="icon-3d"&gt;&lt;/span&gt;&lt;br/&gt;التصميم ثلاثي الأبعاد&lt;/div&gt;
    &lt;div class="service-description"&gt;&lt;p&gt; ... &lt;/p&gt;&lt;/div&gt;
  &lt;/section&gt;

  &lt;section class="service"&gt;
    &lt;div class="service-icon"&gt;&lt;span class="icon-illustration"&gt;&lt;/span&gt;&lt;br/&gt;إيضاحات&lt;/div&gt;
    &lt;div class="service-description"&gt;&lt;p&gt; ... &lt;/p&gt;&lt;/div&gt;
  &lt;/section&gt;
&lt;/div&gt; &lt;!-- END #services --&gt;</pre><p>يوجد <code>div</code> بمعرّف <code>services</code> وصنف Class اسمُه <code>cf</code>؛ توجد داخله ستة عناصر <code>section</code> وبداخل كل <code>section</code> عنصرا <code>div</code>، على النحو الذي ذكرناه سابقا. يوجد بداخل الأول من عنصري <code>div</code> عنصر <code>span</code> لنضع داخله أيقونة وعنوان. في عنصر <code>div</code> الآخر يمكن إدراج المحتوى الإضافي (وصف مثلا).</p><p>حرصنا على جعل السّكربت يظهر في حالة عدم وجود Javascript لدى الزائر، فيظهر لديه المحتوى دون التأثيرات.</p><div class="figure" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_07/559dea6e73318_02__html.png.8901f0b7fdae8acdb2c8b8ba521da647.png"><img data-fileid="3271" class="ipsImage ipsImage_thumbnailed" alt="559dea6eac4f7_02__html.thumb.png.8965682" src="https://academy.hsoub.com/uploads/monthly_2015_07/559dea6eac4f7_02__html.thumb.png.8965682ac0211f9fa22d6d30c13e0ce4.png"></a></div><p>ننتقل الآن إلى تنسيق المحتوى عن طريق CSS وتهيئته لعمل تأثيرات عليه بواسطة jQuery.</p><h2 id="تنسيق-الشبكة-عن-طريق-css">تنسيق الشبكة عن طريق CSS</h2><p>يتكوّن ملف CSS من ثلاثة أجزاء: الأساسي للعمل مع jQuery، شفرة خط الأيقونة، والأخير تنسيقات لمظهر أجمل. في ما يلي الجزء الأول.</p><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">#services .service {
  width: 33%;
  float: left;
  padding: 0.5em;
  min-height: 200px;
  overflow: hidden;
  position: relative;
  border: 1px solid #eee;
}

@media screen and (max-width: 600px) {
  #services .service {
    width: 50%;
  }
}

@media screen and (max-width: 320px) {
  #services .service {
    width: 100%;
  }
}

#services .service .service-icon, #services .service .service-description {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #fff;
  padding: 50px 0;
  color: #222;
}

#services .service .service-description {
  left: 100%;
  background: #249EC2;
  color: white;
  padding: 50px;
}

#services .service .service-description:hover { cursor: pointer; }</pre><p>نشرح عمل الأسطر السابقة. نستهدف أولا الخلايا (<code>service.</code>) لترتيبها داخل الشبكة بإعطائها عرضا مائعا Fluid وحدا أدنى للارتفاع، وجعلها تطفو إلى اليسار (لهذا السبب سنجعل - في ما بعد - عنصر التغليف يمنع المحتوى من الانسياب باستخدام خاصية <code>clear</code>. راجع درس <a href="https://academy.hsoub.com/code/css/%D8%A3%D8%B3%D8%A7%D8%B3%D9%8A%D8%A7%D8%AA-%D8%A7%D9%84%D8%B7%D9%88%D9%81%D8%A7%D9%86-float-%D9%81%D9%8A-%D8%A3%D9%88%D8%B1%D8%A7%D9%82-%D8%A7%D9%84%D8%A3%D9%86%D9%85%D8%A7%D8%B7-%D8%A7%D9%84%D9%85%D9%8F%D8%AA%D8%AA%D8%A7%D9%84%D9%8A%D8%A9-css-r36/">أساسيات الطوفان Float في أوراق الأنماط المُتتالية CSS</a> بهذا الخصوص). ثم - وهذا مهم جدا - نعطي القيمة <code>hidden</code> لخاصية <code>overflow</code> (لو لم نفعل ذلك لعُرِض المحتوى الإضافي طول الوقت) مع تحديد التموضع النسبي <code>position: relative</code>. نستخدم بعدها استعلامات الوسائط Media queries لأخذ عدة شاشات في الحسبان وبالتالي جعل الشبكة متجاوبة. تعني هذه الشيفرة أن تصميم الشبكة سيتكون من ثلاثة أعمدة بالنسبة لسطح المكتب (عرض الشاشة أكبر من <code>600px</code>)، ثم يتحول إلى عموديْن إذا نقُص عرض الشاشة وفي الشاشات الصغيرة يصبح عمودا واحدا.</p><p>نستهدف الآن - بعد الانتهاء من تجهيز الخلايا - العناصِر الداخلية، <code>service-icon.</code> و<code>service-description.</code>؛ ونعطيها تموضعا مطلقا (لهذا السبب أعطينا حدا أدنى للارتفاع في النمط السابق) ثم نضعها في يسار الجزء العلوي. بالنسبة لموضع الوصف <code>service-description.</code> فسنغيره بعد قليل. نجعل العنصريْن الداخليّيْن يملآن كامل العنصر الأب. البقية للتأثير المرئي. أخيرا نستهدف عنصُر الوصف لوحده فنعطي القيمة<code> </code>%100 لخاصية left مما يجعله بالكامل يندفع إلى اليمين خارج مجال الرؤية نظرا لضبط خاصية overflow على hidden ضمن service.. سنستهدغ قيمة left هذه في jQuery، وهو ما يجعل من المهم تعريفها الآن.</p><h2 id="خط-الأيقونة">خط الأيقونة</h2><p>ننتقل الآن إلى الخطوة التالية وهي تعريف أسماء الأصناف المُستخدمة ضمن HTML لتُعرَض الأيقونات الصحيحة؛ نستخدم <code>font-face@</code> للحصول على خطوط الأيقونات. نبحث أولا عن وسيلة لإيجاد خط أيقونات مناسب لاحتياجاتنا. توجد عدة خيّارات اخترنا من بينها موقع <a rel="external nofollow" href="http://fontastic.me/">Fontastic</a>. تختار على الموقع الأيقونات التي ترغب في استخدامها، يعتمد الاختيار طبعا على نوعية المشروع الذي تعمل عليه. يمكنك تغيير بعض المعلومات مثل أسماء أصناف الأيقونات وأسماء الخطوط على النحو المبيَّن أدناه.</p><div class="figure" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_07/03_fontastic.png.3ce6e18c9e59903480a07eb74d32fd64.png"><img data-fileid="3269" class="ipsImage ipsImage_thumbnailed" alt="03_fontastic.thumb.png.a437f5d87a2abf0ec" src="https://academy.hsoub.com/uploads/monthly_2015_07/03_fontastic.thumb.png.a437f5d87a2abf0ec7928d9e5316f80d.png"></a></div><p>اخترنا نفس الأسماء الموجودة في سكربت HTML من أجل تطابق دون مشاكل. يعطيك الموقع مجلدا لتنزيله مع شفرة للاستخدام. ضَع مجلد الخطوط في مجلد CSS (أو أي مجلد آخر يناسبك) ثم خذ الشفرة وضعها في ملف CSS. إليك ما تحتاجه:</p><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">@font-face {
  font-family: "slidable-grid";
  src:url("fonts/slidable-grid.eot");
  src:url("fonts/slidable-grid.eot?#iefix") format("embedded-opentype"),
  url("fonts/slidable-grid.woff") format("woff"),
  url("fonts/slidable-grid.ttf") format("truetype"),
  url("fonts/slidable-grid.svg#slidable-grid") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"]:before,
[class*=" icon-"]:before {
  font-family: "slidable-grid" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  font-size: 4em;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-web:before {
  content: "a";
}

.icon-graphic:before {
  content: "b";
}

.icon-logo:before {
  content: "c";
}

.icon-dev:before {
  content: "d";
}

.icon-3d:before {
  content: "e";
}

.icon-illustration:before {
  content: "f";
}</pre><p>إن أعدت تحميل المشروع فستظهر الأيقونات. لم يتبقَّ لنا سوى إكمال التنسيق.</p><h2 id="تنسيقات-نهائية">تنسيقات نهائية</h2><p>نستكمل ما بقي من تنسيقات. في ما يلي الشفرة التي تضع الشبكة في الوسط وتعطيها العرض الأقصى. نضيف تأثيرا للحوم على الأيقونات:</p><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">@import url(reset.css);

* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

.cf:before, .cf:after { content: " "; /* 1 */ display: table; /* 2 */ }
.cf:after { clear: both; }
.cf { *zoom: 1; }

body {
  font-family: 'Exo 2', sans-serif; /* Google Font &lt;a href="http://google.com/fonts"&gt;http://google.com/fonts&lt;/a&gt;   */
  text-align: center;
  color: #999;
  background: #444;
  -webkit-font-smoothing: antialiased;
}

#services {
  max-width: 850px;
  margin: 0 auto;
}

#services .service .service-icon:hover {
  cursor: pointer;
  color: #249EC2;
}

#services .service .service-icon span {
  display: block;
  -webkit-transition: all 0.1s linear;
  -moz-transition: all 0.1s linear;
  transition: all 0.1s linear;
}

#services .service .service-icon:hover span {
  position: relative;
  bottom: 5px;
}</pre><h2 id="ميزة-jquery">إضافة jQuery</h2><p>نهدف من خلال استخدام jQuery إلى إعادة استخدام نفس الشفرة البرمجية للشبكة كاملة. ننتظر النقر على إحدى خلايا الشبكة (صنف <code>service</code>) وعند حدوثه نحرك مكان الأيقونة ونزيحها خارج الإطار المرئي ثم نجلب الوصف لعرضه. نضيف أيضا صنفا جديدا (<code>open</code>) لمساعدتنا في معرفة العنصر المرئي. اجلب jQuery إلى الصفحة ثم أضف الشفرة التالية في ملف أو في وسم <code>&lt;script&gt;</code>:</p><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$(document).ready(function() {
  $('.service').click(function() {
    var $this = $(this);
    if ($this.hasClass("open")) {
      $this.find('.service-icon').animate({left: "0"});
      $this.find('.service-description').animate({left: "100%"});
      $this.removeClass("open");
    } else {
      $this.find('.service-icon').animate({left: "-100%"});
      $this.find('.service-description').animate({left: "0"});
      $this.addClass("open");
    }
  });
});</pre><p>بعد أن تجهز الصفحة وعند النقر على كتلة <code>service.</code> نختبر هل لدى هذه الكتلة صنف <code>open</code> أم لا. في البداية لا يوجد قسم صنف لدى العناصر <code>service</code> مما يعني أن الاختبار سيتجاوز مباشرة إلى تنفيذ الأوامر الموجودة في <code>else</code>، فنبحث عن عنصر <code>div</code> الذي توجد به الأيقونة (<code>service-icon.</code>) ونحركه إلى اليسار ب<code>%100-</code>؛ ثم نعثر على الوصف ونحركه إلى اليسار عند <code>0</code> مما يجعله مرئيا. في الأخير نضيف صنف <code>open</code> إلى <code>service</code>. يعني هذا أنه سيكون لدى <code>service</code> بعد النقر عليه وإظهار المحتوى الإضافي صنفٌ باسم <code>open</code> على النحو الذي يظهر في الصورة التالية.</p><div class="figure" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_07/559df3c745b03_04__open.png.5807276d921ddb6ac9654820021eb4c7.png"><img data-fileid="3273" class="ipsImage ipsImage_thumbnailed" alt="559df3c7ec997_04__open.thumb.png.75e95b0" src="https://academy.hsoub.com/uploads/monthly_2015_07/559df3c7ec997_04__open.thumb.png.75e95b0a44e5118c4770e30709afa2a7.png"></a></div><p>يمكننا بالعودة إلى تعليمة <code>if</code> في الشفرة السابقة أن نرى أنه بالنقر على كتلة <code>service.</code> لديها صنف باسم <code>open</code> فإن الأيقونة تعود إلى الوضعية <code>0</code> والوصف ينزاح ب<code>%100</code>. نزيل بعدها الصنف <code>open</code> لتمكن إعادة استخدامه والنقر عليه أكثر من مرة.</p><h2 id="خاتمة-وأفكار">خاتمة وأفكار</h2><p>لدينا الآن نظام بشبكة لدى كل خلية منها وجهان. يمكن التعديل على الفكرة ومواءمتها حسب طبيعة الاستخدام.</p><p>يوجد في الصفحة التجريبية مثال آخر يُبدَل فيه وجه الخلية عند الحوم فوقها وليس عند النقر. يمكن الحصول على هذا التأثير عبر إبدال دالة <code>()click.</code> ب<code>()hover.</code> في شفرة jQuery. يعود الخيار لك. يمكنك أيضا تغيير اتجاه التحريك بإبدال <code>left</code> بالقيمة المناسبة. سرعة الحركة يمكن التعديل عليها هي الأخرى.</p><p>ابتعد عن الإكثار من استخدام شبكة الخلايا المنزلقة بدون داع، ولا تستعملها إلا إذا كانت تضيف إلى تجربة المستخدم.</p><p>يمكن تنزيل نتيجة هذا الدرس  <a class="ipsAttachLink" href="https://academy.hsoub.com/applications/core/interface/file/attachment.php?id=3274">demo.zip</a>.</p><p>ترجمة بتصرف لمقال <a rel="external nofollow" href="http://www.webdesignerdepot.com/2014/01/how-to-create-a-slidable-grid-with-jquery/">How to create a slidable grid with jQuery</a> لصاحبه <a rel="external nofollow" href="http://www.webdesignerdepot.com/author/Harry-Atkins/">Harry Atkins</a>.</p>
]]></description><guid isPermaLink="false">127</guid><pubDate>Tue, 14 Jul 2015 14:47:15 +0000</pubDate></item><item><title>10 &#x62D;&#x64A;&#x644; jQuery &#x64A;&#x62C;&#x628; &#x623;&#x646; &#x64A;&#x639;&#x631;&#x641;&#x647;&#x627; &#x643;&#x644; &#x645;&#x635;&#x645;&#x645;</title><link>https://academy.hsoub.com/programming/javascript/jquery/10-%D8%AD%D9%8A%D9%84-jquery-%D9%8A%D8%AC%D8%A8-%D8%A3%D9%86-%D9%8A%D8%B9%D8%B1%D9%81%D9%87%D8%A7-%D9%83%D9%84-%D9%85%D8%B5%D9%85%D9%85-r122/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_07/jquery.png.de34c39aa26ffd698cdecc7dd6e03324.png" /></p>

<p>تعد مكتبة jQuery واحدة من أكثر المكتبات استخداما للإضافة على الصفحات؛ إذ أنها تجعل من التعامل مع نموذج كائن المستند Document object model, DOM أمرا في منتهى اليسر.</p><p style="text-align: center;"><a href="https://academy.hsoub.com/uploads/monthly_2015_07/jquery.png.71d4f7772e4c83439683002eccf61202.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="3265" src="https://academy.hsoub.com/uploads/monthly_2015_07/jquery.thumb.png.5f31b5ae0d0b23e83019cc6ee79c354f.png" class="ipsImage ipsImage_thumbnailed" alt="jquery.thumb.png.5f31b5ae0d0b23e83019cc6"></a></p><p>لا شك أن السهولة في التعامل سبب أساسي في شعبية jQuery، إذ يبدو بالإمكان فعل أي شيء نريده عن طريق هذه المكتبة.</p><p>توجد، من بين الخيارات المتاحة أمامنا، مقاطع Snippets تجنح إلى الظهور المرة تلو الأخرى. سنعرِض في هذا المقال إلى عشرة مقاطِع سيستخدمها الجميع، من المبتدئ إلى المتمكن، مرارا وتكرارا.</p><h2 id="زر-العودة-إلى-الأعلى">زر العودة إلى الأعلى</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">// عد إلى الأعلى
$('a.top').click(function(){
  $(document.body).animate({scrollTop : 0}, 800);
  return false;
});

// Anchor tag أنشئ وسما للمربط
&lt;a class="top" href="#"&gt;عد إلى الأعلى&lt;/a&gt;</pre><p>يتضح أننا لا نحتاج إلى إضافة Plugin لـ jQuery من أجل الحصول على تحريك سهل إلى الأعلى؛ يكفي استخدام دالتي <code>animate</code> و <code>scrollTop</code>.</p><p>يمكن تغيير المكان الذي يحُط فيه شريط التمرير عبر تغيير قيمة <code>scrollTop</code>. في المثال أعلاه استخدمنا القيمة <code>0</code> لأننا نريد العودة إلى أعلى الصفحة، لكن لو أردنا زَيحانًا offset بقيمة <code>100px</code> فيمكن إدراج هذه القيمة.</p><p>يتلخص ما فعلناه في تحريك جسم المستند Document body طوال 800 ملي ثانيّة حتى يصل إلى القمّة.</p><h2 id="التحقق-من-تحميل-الصور">التحقق من تحميل الصور</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$('img').load(function() {
  console.log('image load successful');
});</pre><p>تحتاج أحيانا إلى التأكد من تحميل كل الصور قبل إكمال السكربت؛ تؤدي الأسطر الثلاثة أعلاه هذه المهمة بكل يُسر. يمكن أيضا التحقق من تحميل صورة معينة عبر إبدال وسم <code>tag</code> بمعرِّف <code>ID</code> أو صنف Class.</p><h2 id="تصحيح-الصور-المعطوبة-تلقائيا">تصحيح الصور المعطوبة تلقائيا</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$('img').error(function(){
  $(this).attr('src', 'img/broken.png');
});</pre><p>تحصل أحيانا أعطاب في روابط الصور على الموقع يكون معها إبدال الروابط يدويا أمرا صعبا. يعمل المقطع أعلاه على إبدال الصور المعطوبة تلقائيا مما ينقِذ من الكثير من المشاكل.</p><h2 id="تبديل-الصنف-عند-الحومان-hover">تبديل الصنف عند الحومان Hover</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$('.btn').hover(function(){
  $(this).addClass('hover');
}, function(){
  $(this).removeClass('hover');
}
);</pre><p>نرغب عادة في تغيير مظهر العناصر القابلة للنقر في صفحة الويب عندما يحوم حولها المؤشر وهو بالضبط ما تفعله الأسطر في المقطع أعلاه؛ فتضيف صنفا للعنصر عند الحوم حوله ثم تزيل الصنف عندما يكُفّ المستخدِم. كل ما عليك فعله هو إضافة التنسيق المرغوب ضمن ملف CSS.</p><h2 id="تعطيل-حقول-الإدخال">تعطيل حقول الإدخال</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$('input[type="submit"]').attr("disabled", true);</pre><p>قد تريد تعطيل زر الإرسال أو حقل إدخال إلى أن يؤدي المستخدم إجراء معينا (التأشير على صندوق “قرأتُ الشروط”، مثلا). يضيف المقطع خاصية <code>disabled</code> (مُعطَّل) إلى الحقل مما يتيح لك تفعيله عندما تريد. كل ما عليك فعله لتفعيل الحقل هو تنفيذ الدالة <code>removeAttr</code> مع تمرير المُعطى <code>disabled</code> على النحو التالي:</p><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$('input[type="submit"]').removeAttr("disabled");</pre><h2 id="إيقاف-تحميل-الروابط">إيقاف تحميل الروابط</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$('a.no-link').click(function(e){
  e.preventDefault();
});</pre><p>قد نود أن تؤدي الروابط أعمالا أخرى غير الانتقال إلى صفحة أو حتى إعادة تحميلها، وهو ما تعمل عليه الأسطر أعلاه عبر تعطيل الإجراء الافتراضي Default action. قد يكون السبب - على سبيل المثال - تنشيطَ سكربت آخر.</p><h2 id="التبديل-بين-تأثيري-التلاشي-fade-والانزلاق-slide">التبديل بين تأثيريْ التلاشي Fade والانزلاق Slide</h2><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">// تلاش

$(".btn").click(function() {
  $(".element").fadeToggle("slow");
});

// تبديل
$(".btn").click(function() {
  $(".element").slideToggle("slow");
});</pre><p>تأثيرا التّلاشي والانزلاق من أكثر التّأثيرات في jQuery استخداما. عندما نريد فقط عرض عنصر عند النقر فإن دالتي <code>fadeIn</code> و<code>slideDown</code> ملائمتان تماما. لكن إن أردنا أن يظهر العنصر بعد النقرة الأولى ثم يختفي بعد الثانية فهذا المقطع يؤدي المهمة بنجاح.</p><h2 id="تأثير-الطي">تأثير الطّيّ</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">// أغلق كل اللوحات
$('#accordion').find(‘.content').hide();
// تأثير الطّيّ
$('#accordion').find('.accordion-header').click(function(){
  var next = $(this).next();
  next.slideToggle('fast');
  $('.content').not(next).slideUp('fast');
  return false;
});</pre><p>كل ما تحتاجه إلى جانب هذا المقطع هو شفرة HTML المناسبة للتأثير. أولا نغلق كل اللوحات ثم عند حدث النقر <code>click</code> ينزلق المحتوى المربوط بالترويسة <code>accordion-header</code> بالتتابع. هذه طريقة سهلة للحصول على تأثير طي بسرعة.</p><h2 id="تحديد-ارتفاع-عنصر-div-اعتمادا-على-آخر">تحديد ارتفاع عنصر div اعتمادا على آخر</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$('.div').css('min-height', $('.main-div').height());</pre><p>تمكِّن هذه الطريقة من تحديد نفس الارتفاع لعنصريْ <code>div</code> بغض النظر عن محتوى كل منهما. في السطر أعلاه عيّنا ارتفاع عناصر <code>div</code> بحيث يكون لديها على الأقل ارتفاع العنصر <code>main-div</code>.</p><h2 id="لائحة-بألوان-مختلفة-حسب-العناصر-الزوجية-والفردية">لائحة بألوان مختلفة حسب العناصِر الزوجية والفردية</h2><pre data-pbcklang="" data-pbcktabsize="" class="ipsCode prettyprint">$('li:odd').css('background', '#E8E8E8');</pre><p>يمنح هذا السطر خلفية باللون المحدد للعناصر الفردية من اللائحة؛ مما يمكنك من الحصول على لائحة مخطَّطة - مثل هيئة الحمار الوحشي - عبر إضافة لون خلفية افتراضي في ملف CSS تأخذه العناصر الزوجية من اللائحة. لا يقتصر استخدام هذه الطريقة على اللوائح بل يتعداها إلى الجداول وعناصر <code>div</code> وغيرها.</p><p>ترجمة بتصرّف لمقال <a rel="external nofollow" href="http://www.webdesignerdepot.com/2014/01/10-jquery-snippets-every-designer-should-know/">10 jQuery snippets every designer should know</a> لصاحبته <a rel="external nofollow" href="http://www.webdesignerdepot.com/author/Sara-Vieira/">Sara Vieira</a>.</p>
]]></description><guid isPermaLink="false">122</guid><pubDate>Wed, 08 Jul 2015 13:46:08 +0000</pubDate></item><item><title>&#x643;&#x64A;&#x641;&#x64A;&#x64E;&#x651;&#x629; &#x625;&#x646;&#x634;&#x627;&#x621; &#x639;&#x631;&#x636; &#x634;&#x631;&#x627;&#x626;&#x62D; &#x642;&#x627;&#x628;&#x644; &#x644;&#x644;&#x62A;&#x64E;&#x651;&#x62D;&#x631;&#x64A;&#x643; &#x628;&#x627;&#x633;&#x62A;&#x62E;&#x62F;&#x627;&#x645; jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D9%83%D9%8A%D9%81%D9%8A%D9%8E%D9%91%D8%A9-%D8%A5%D9%86%D8%B4%D8%A7%D8%A1-%D8%B9%D8%B1%D8%B6-%D8%B4%D8%B1%D8%A7%D8%A6%D8%AD-%D9%82%D8%A7%D8%A8%D9%84-%D9%84%D9%84%D8%AA%D9%8E%D9%91%D8%AD%D8%B1%D9%8A%D9%83-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-jquery-r108/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_06/jquery-slide.png.5305163c149d3bef80e724368593a778.png" /></p>

<div id="wmd-preview-section-16">
	<p id="كيفية-إنشاء-عرض-شرائح-قابل-للتحريك-باستخدام-jquery">
		بغضِّ النَّظر عن ماهية موقع الوِّيب خاصَّتك، إلَّا أنَّكَ إذا أضفتَ إليه عرض شرائح JavaScript يؤدِّي كُلَّ وظائفه بجودةٍ عالية، فإنَّكَ بذلك تكون قد قُمتَ بتضييق الفجوة بين عملك والعُملاء المُستهدفين. لقد خَدَمَتْ عروض شرائح JavaScript على نحوٍ كبيرٍ كإضافاتٍ لصفحات الوِّيب، حيثُ أنَّها وسيلة رائعة لعرض الكثير والكثير من المعلومات في مساحةٍ صغيرةٍ نسبيًّا. إذا كانت التَّفاصيل المذكورة هذه كافية لإغرائكَ لإنشاء عرض شرائحكَ الخاص باستخدام JavaScript (مع اللَّوحات المُنزلقة) فأنتَ في المكان المُناسب لتعلُّم هذا. سنتشاركُ في هذا الدَّرس بعض الخطوات البسيطة التي يسهل تنفيذها لإنشاء عرض شرائح JavaScript.
	</p>

	<p style="text-align: center;">
		<a class="ipsAttachLink ipsAttachLink_image" data-fileid="3013" href="https://academy.hsoub.com/uploads/monthly_2015_06/jquery-slide.png.7381b0d9b667e975271ee208a60d0af5.png" rel=""><img alt="jquery-slide.png" class="ipsImage ipsImage_thumbnailed" data-fileid="3013" src="https://academy.hsoub.com/uploads/monthly_2015_06/jquery-slide.thumb.png.4a512601d77e07740a5d45c8b1930032.png"></a>
	</p>
</div>

<div id="wmd-preview-section-17">
	<h2 id="توضيح-الخطوات-المتبعة-في-هذا-الدرس-لإنشاء-عرض-شرائح-javascript">
		توضيح الخطوات المُتَّبعة في هذا الدَّرس لإنشاء عرض شرائح JavaScript
	</h2>

	<p>
		سأستخدم في هذا الدَّرس شفرات <span style="font-family:courier new,courier,monospace;">HTML</span> <span style="font-family:courier new,courier,monospace;">وCSS</span> بسيطة لإنشاء مظهر عرض الشَّرائح في حين أنَّ تنفيذ وظيفة الإنزلاق سيتمّ عن طريق استخدام مكتبة <span style="font-family:courier new,courier,monospace;">jQuery</span> وهي مكتبة تابعة لـ JavaScript. كما سأستخدم أيضًا إضافتين واسعتي الانتشار: <span style="font-family:courier new,courier,monospace;">LocalScroll</span> <span style="font-family:courier new,courier,monospace;">وScrollTo</span> لتقديم التَّاثيرأت الكامنة في عرض شرائح JavaScript. تسمحُ الإضافة الأولى للرَّابط بتخطِّي عرض الشَّرائح إلى شريحةٍ مُحدَّدة بناءً على المُعرِّف ID الذي قد تمَّ تحديده. بينما تُقدِّم الإضافة الثَّانية وظائف انزلاقٍ مُمتازة، حيثُ أنَّها توفِّر خاصيَّة الانتقال بين الشَّرائح بدلًا من القفز من شريحة إلى الأُخرى. <br>
		حيثُ أنَّنا سنأخذ مُعامِلات الوصول الأساسيَّة في الحُسبان عند بناء عرض الشَّرائح، فسيكون بإمكان كُلّ مُستخدم التنقُّل وعرض الشَّرائح حتى عند توقُّف JavaScript عن العمل.
	</p>
</div>

<div id="wmd-preview-section-18">
	<h2 id="فيما-يلي-نظرة-على-بنية-html-لعرض-الشرائح">
		فيما يلي نظرة على بنية HTML لعرض الشَّرائح:
	</h2>

	<pre class="html ipsCode prettyprint prettyprinted" data-pbcklang="html" data-pbcktabsize="">
<span class="dec">&lt;!DOCTYPE html&gt;</span><span class="pln">
</span><span class="tag">&lt;html</span><span class="pln"> </span><span class="atn">lang</span><span class="pun">=</span><span class="atv">"en"</span><span class="tag">&gt;</span><span class="pln">
</span><span class="tag">&lt;head&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">charset</span><span class="pun">=</span><span class="atv">"utf-8"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">
  </span><span class="tag">&lt;title&gt;</span><span class="pln">Sliding-enabled slideshow using jQuery | Script Tutorials</span><span class="tag">&lt;/title&gt;</span><span class="pln">
  </span><span class="tag">&lt;meta</span><span class="pln"> </span><span class="atn">name</span><span class="pun">=</span><span class="atv">"description"</span><span class="pln"> </span><span class="atn">content</span><span class="pun">=</span><span class="atv">"Sliding-enabled slideshow using jQuery demo - Script Tutorials"</span><span class="tag">&gt;</span><span class="pln">

  </span><span class="com">&lt;!-- include to stylesheet --&gt;</span><span class="pln">
  </span><span class="tag">&lt;link</span><span class="pln"> </span><span class="atn">rel</span><span class="pun">=</span><span class="atv">"stylesheet"</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"css/style.css"</span><span class="pln"> </span><span class="atn">type</span><span class="pun">=</span><span class="atv">"text/css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln">

  </span><span class="com">&lt;!-- include jQuery library and other javascripts --&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"js/jquery.scrollTo.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"js/jquery.localscroll.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
  </span><span class="tag">&lt;script</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"js/custom-scripts.js"</span><span class="tag">&gt;&lt;/script&gt;</span><span class="pln">
</span><span class="tag">&lt;/head&gt;</span><span class="pln">
</span><span class="tag">&lt;body&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"slideshow"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="com">&lt;!-- List of slider images --&gt;</span><span class="pln">
    </span><span class="tag">&lt;ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"slide1"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/slide1.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Slide 1"</span><span class="pln"> </span><span class="tag">/&gt;&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"slide2"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/slide2.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Slide 2"</span><span class="pln"> </span><span class="tag">/&gt;&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"slide3"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/slide3.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Slide 3"</span><span class="pln"> </span><span class="tag">/&gt;&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"slide4"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/slide4.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Slide 4"</span><span class="pln"> </span><span class="tag">/&gt;&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"slide5"</span><span class="tag">&gt;&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"images/slide5.jpg"</span><span class="pln"> </span><span class="atn">alt</span><span class="pun">=</span><span class="atv">"Slide 5"</span><span class="pln"> </span><span class="tag">/&gt;&lt;/li&gt;</span><span class="pln">
    </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
  </span><span class="tag">&lt;div</span><span class="pln"> </span><span class="atn">id</span><span class="pun">=</span><span class="atv">"slideshow-nav"</span><span class="tag">&gt;</span><span class="pln">
    </span><span class="com">&lt;!-- Navigation list of slider images --&gt;</span><span class="pln">
    </span><span class="tag">&lt;ul&gt;</span><span class="pln">
      </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#slide1"</span><span class="tag">&gt;</span><span class="pln">Slide 1</span><span class="tag">&lt;/a&gt;&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#slide2"</span><span class="tag">&gt;</span><span class="pln">Slide 2</span><span class="tag">&lt;/a&gt;&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#slide3"</span><span class="tag">&gt;</span><span class="pln">Slide 3</span><span class="tag">&lt;/a&gt;&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#slide4"</span><span class="tag">&gt;</span><span class="pln">Slide 4</span><span class="tag">&lt;/a&gt;&lt;/li&gt;</span><span class="pln">
      </span><span class="tag">&lt;li&gt;&lt;a</span><span class="pln"> </span><span class="atn">href</span><span class="pun">=</span><span class="atv">"#slide5"</span><span class="tag">&gt;</span><span class="pln">Slide 5</span><span class="tag">&lt;/a&gt;&lt;/li&gt;</span><span class="pln">
    </span><span class="tag">&lt;/ul&gt;</span><span class="pln">
  </span><span class="tag">&lt;/div&gt;</span><span class="pln">
</span><span class="tag">&lt;/body&gt;</span><span class="pln">
</span><span class="tag">&lt;/html&gt;</span></pre>

	<p>
		بالاطّلاع بعنايةٍ على الشَّفرات أعلاه ستُلاحظ أنَّ شفرات HTML لصفحات العرض تبدأ بـ <span style="font-family:courier new,courier,monospace;">Doctype</span>، عنوان <span style="font-family:courier new,courier,monospace;">title</span> ورابط إلى ملف نمط CSS. بعد هؤلاء الثلاث ستجد أنَّه لتجهيز عرض الشَّرائح وتشغيله قد تمَّ اضافة رابط لكلٍّ من: الإضافتين LocalScroll وScrollTo السَّابق توضيحهما، مكتبة jQuery وملف <span style="font-family:courier new,courier,monospace;">script.js</span>. <br>
		كذلك قد تمَّ فصل شفرات HTML المسئولة عن تكوين عرض الشَّرائح إلى قسمين: وسم <span style="font-family:courier new,courier,monospace;">div</span> مُعرَّف بـ <span style="font-family:courier new,courier,monospace;">slideshow</span> وآخر مُعرَّف بـ <span style="font-family:courier new,courier,monospace;">slideshow-nav</span>. من المُهمّ هُنا مُلاحظة أنَّ وسم <span style="font-family:courier new,courier,monospace;">div</span> المُعرَّف بـ <span style="font-family:courier new,courier,monospace;">slideshow</span> سوف يحتوي على قائمة غير مُرقَّمة من صورٍ مُتَّصلة، ووسوم <span style="font-family:courier new,courier,monospace;">li</span> تحتوي على مُعرِّفاتٍ تتوافق مع روابط <span style="font-family:courier new,courier,monospace;">slideshow-nav</span>.
	</p>
</div>

<div id="wmd-preview-section-19">
	<h2 id="لنلقي-الآن-نظرة-على-أنماط-css">
		لنُلقي الآن نظرة على أنماط CSS
	</h2>

	<pre class="css ipsCode prettyprint prettyprinted" data-pbcklang="css" data-pbcktabsize="4" style="line-height: 22.4px;">
<span class="pln">css</span><span class="pun">/</span><span class="pln">style</span><span class="pun">.</span><span class="pln">css</span></pre>

	<pre class="css ipsCode prettyprint prettyprinted" data-pbcklang="css" data-pbcktabsize="4">
<span class="com">#slideshow {/*slider container css*/</span><span class="pln">
  width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">800px</span><span class="pun">;</span><span class="pln">
  height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">400px</span><span class="pun">;</span><span class="pln">
  overflow</span><span class="pun">:</span><span class="pln"> hidden</span><span class="pun">;</span><span class="pln">
  margin</span><span class="pun">:</span><span class="pln"> </span><span class="lit">50px</span><span class="pln"> </span><span class="kwd">auto</span><span class="pln"> </span><span class="lit">50px</span><span class="pln"> </span><span class="kwd">auto</span><span class="pun">;</span><span class="pln">
  box</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">50px</span><span class="pln"> </span><span class="com">#333;</span><span class="pln">
  </span><span class="pun">-</span><span class="pln">moz</span><span class="pun">-</span><span class="pln">box</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">50px</span><span class="pln"> </span><span class="com">#333;</span><span class="pln">
  </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">box</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">50px</span><span class="pln"> </span><span class="com">#333;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">

</span><span class="com">#slideshow ul {/*manage slider scroll elements css*/</span><span class="pln">
  width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">4000px</span><span class="pun">;</span><span class="pln">
  list</span><span class="pun">-</span><span class="pln">style</span><span class="pun">:</span><span class="pln"> none</span><span class="pun">;</span><span class="pln"> 
</span><span class="pun">}</span><span class="pln">

</span><span class="com">#slideshow ul li {</span><span class="pln">
  </span><span class="kwd">float</span><span class="pun">:</span><span class="pln"> left</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span></pre>

	<p>
		ستقوم أنماط CSS الموجودة بالأعلى بالعمل على تحويل المظهر البسيط النَّاشئ عن شفرات HTML إلى صفحاتٍ تظهرُ بشكلٍ يُشبه عرض الشَّرائح المطلوب. يتمّ تنفيذ هذا بدءًا من تحديد ارتفاع وعرض هذه الشَّرائح، تحديد أيضًا الأبعاد لتكون مُماثلة تمامًا لأبعاد شرائح الصور. مع كُلّ الشَّرائح عائمة جنبًا إلى جنب فإنَّه من المُمكن تحديد قياسات العرض الكُلِّي للقائمة الغير مُرقَّمة حتَّى 4590px. كذلك قد تمَّ استخدام خاصيَّة الفائض <span style="font-family:courier new,courier,monospace;">overflow</span> لمنع ظهور الصور المُتعدِّدة بأكملها في الصَّفحة. كُلّ ما تحتاج لفعله هُنا هو ببساطة تعيين خاصيَّة الفائض كـ <span style="font-family:courier new,courier,monospace;">overflow: scroll</span>، يؤدِّي هذا التَّعيين إلى السَّماح لعرض الشَّرائح بالعمل حتَّى في حالة عدم وجود JavaScript.
	</p>
</div>

<div id="wmd-preview-section-20">
	<h2 id="تم-إضافة-ظل-لطيف-باستخدام-css3-box-shadow-كما-هو-مبين-أدناه">
		تمَّ إضافة ظلّ لطيف باستخدام CSS3-box shadow كما هو مُبيَّن أدناه
	</h2>

	<pre class="css ipsCode prettyprint prettyprinted" data-pbcklang="css" data-pbcktabsize="">
<span class="com">#slideshow-nav {/* Slider navigation container css */</span><span class="pln">
  width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">150px</span><span class="pun">;</span><span class="pln">
  margin</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="kwd">auto</span><span class="pln"> </span><span class="lit">100px</span><span class="pln"> </span><span class="kwd">auto</span><span class="pun">;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
</span><span class="com">#slideshow-nav ul {</span><span class="pln">
  list</span><span class="pun">-</span><span class="pln">style</span><span class="pun">:</span><span class="pln"> none</span><span class="pun">;</span><span class="pln"> 
</span><span class="pun">}</span><span class="pln">
</span><span class="com">#slideshow-nav ul li {</span><span class="pln">
  </span><span class="kwd">float</span><span class="pun">:</span><span class="pln"> left</span><span class="pun">;</span><span class="pln"> 
</span><span class="pun">}</span><span class="pln">
</span><span class="com">#slideshow-nav ul li a {/* navigation styling css */</span><span class="pln">
  display</span><span class="pun">:</span><span class="pln"> block</span><span class="pun">;</span><span class="pln">
  width</span><span class="pun">:</span><span class="pln"> </span><span class="lit">20px</span><span class="pun">;</span><span class="pln">
  height</span><span class="pun">:</span><span class="pln"> </span><span class="lit">20px</span><span class="pun">;</span><span class="pln">
  </span><span class="kwd">float</span><span class="pun">:</span><span class="pln"> left</span><span class="pun">;</span><span class="pln">
  margin</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="lit">5px</span><span class="pun">;</span><span class="pln">
  background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#fff;</span><span class="pln">
  text</span><span class="pun">-</span><span class="pln">indent</span><span class="pun">:</span><span class="pln"> </span><span class="pun">-</span><span class="lit">9999px</span><span class="pun">;</span><span class="pln">
  border</span><span class="pun">-</span><span class="pln">radius</span><span class="pun">:</span><span class="pln"> </span><span class="lit">50</span><span class="pun">%;</span><span class="pln">
  </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">border</span><span class="pun">-</span><span class="pln">radius</span><span class="pun">:</span><span class="pln"> </span><span class="lit">50</span><span class="pun">%;</span><span class="pln">
  box</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">30px</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
  </span><span class="pun">-</span><span class="pln">webkit</span><span class="pun">-</span><span class="pln">box</span><span class="pun">-</span><span class="pln">shadow</span><span class="pun">:</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">0px</span><span class="pln"> </span><span class="lit">30px</span><span class="pln"> </span><span class="com">#000;</span><span class="pln">
</span><span class="pun">}</span><span class="pln">
</span><span class="com">#slideshow-nav ul li a:hover, #slideshow-nav ul li a.active {</span><span class="pln">
</span><span class="com">/* hover and active navigation css */</span><span class="pln">
  background</span><span class="pun">:</span><span class="pln"> </span><span class="com">#333;</span><span class="pln">
</span><span class="pun">}</span></pre>

	<p>
		بمُعاينةٍ دقيقةٍ هُنا سنُلاحظ أنَّه قد تمَّ نقل وسم div الذي تمَّ تعريفه بـ <span style="font-family:courier new,courier,monospace;">slideshow-nav </span>إلى موضعٍ أسفل القسم الرئيسي لعرض الشَّرائح. لا نُريد كذلك وجود عدَّة أزرار في عرض الشَّرائح والتي لا تعمل عند تفعيل وظائف JavaScript. يُمكنكَ استخدام<span style="font-family:courier new,courier,monospace;"> visibility: hidden</span> لإخفاء تلك الأزرار كوضعٍ افتراضي، مِمَّا يجعل امكانية إظهارها في وقتٍ لاحق أمرًا مُتاحًا. قد يُثير اهتمامكَ أيضًا معرفة أنَّهُ قد تمَّ تحويل الروابط الخاصَّة بكلّ قائمةِ تنقُّلٍ إلى أزرار دائريَّة بمُساعدة <span style="font-family:courier new,courier,monospace;">border-radius</span> في <span style="font-family:courier new,courier,monospace;">CSS3</span> مع إزاحة النَّصّ الافتراضي خارج الشَّاشة عن طريق تعيين قيمة سالبة لـ <span style="font-family:courier new,courier,monospace;">text-indent.</span><br>
		إلى الآن فإنَّ عرض الشَّرائح يعمل بصورة ملموسة ودون الحاجة إلى JavaScript. هُناك فقط شريط تنقُّل يُتيح للمُستخدم التَّحرُّك ذهابًا وإيابًا بين صُورٍ مُختلفة.
	</p>
</div>

<div id="wmd-preview-section-21">
	<h2 id="وأخيرا-لنلقي-نظرة-على-وظائف-jquery">
		وأخيرًا، لنُلقي نظرة على وظائف jQuery
	</h2>

	<pre class="html ipsCode prettyprint prettyprinted" data-pbcklang="html" data-pbcktabsize="4">
<span class="pln">js</span><span class="pun">/</span><span class="pln">custom</span><span class="pun">-</span><span class="pln">scripts</span><span class="pun">.</span><span class="pln">js</span></pre>

	<pre class="javascript ipsCode prettyprint prettyprinted" data-pbcklang="javascript" data-pbcktabsize="">
<span class="pln">$</span><span class="pun">(</span><span class="pln">document</span><span class="pun">).</span><span class="pln">ready</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">()</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
  </span><span class="kwd">var</span><span class="pln"> slider </span><span class="pun">=</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#slideshow"</span><span class="pun">);</span><span class="pln">
  </span><span class="kwd">var</span><span class="pln"> slider_nav </span><span class="pun">=</span><span class="pln"> $</span><span class="pun">(</span><span class="str">"#slideshow-nav"</span><span class="pun">);</span><span class="pln">
  slider_nav</span><span class="pun">.</span><span class="pln">find</span><span class="pun">(</span><span class="str">"a[href=#slide1]"</span><span class="pun">).</span><span class="pln">addClass</span><span class="pun">(</span><span class="str">"active"</span><span class="pun">);</span><span class="pln">

  slider_nav</span><span class="pun">.</span><span class="pln">localScroll</span><span class="pun">({</span><span class="pln">
    target</span><span class="pun">:</span><span class="str">'#slideshow'</span><span class="pun">,</span><span class="pln">
    axis</span><span class="pun">:</span><span class="pln"> </span><span class="str">'x'</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">

  slider_nav</span><span class="pun">.</span><span class="pln">find</span><span class="pun">(</span><span class="str">"a"</span><span class="pun">).</span><span class="pln">click</span><span class="pun">(</span><span class="kwd">function</span><span class="pun">(){</span><span class="pln">
    slider_nav</span><span class="pun">.</span><span class="pln">find</span><span class="pun">(</span><span class="str">"a"</span><span class="pun">).</span><span class="pln">removeClass</span><span class="pun">(</span><span class="str">"active"</span><span class="pun">);</span><span class="pln">
    $</span><span class="pun">(</span><span class="kwd">this</span><span class="pun">).</span><span class="pln">addClass</span><span class="pun">(</span><span class="str">"active"</span><span class="pun">);</span><span class="pln">
  </span><span class="pun">});</span><span class="pln">
</span><span class="pun">});</span></pre>

	<p>
		إذا نظرتَ إلى الشَّفرات أعلاه ستجد أنَّه قم تمَّ تغيير أنماط CSS الخاصَّة بوسم <span style="font-family:courier new,courier,monospace;">slideshow</span> من<span style="font-family:courier new,courier,monospace;"> overflow: scroll</span> إلى <span style="font-family:courier new,courier,monospace;">overflow: hidden</span> لإزالة شريط التَّمرير. بعد ذلك تمَّ تعيين ظهور أزرار <span style="font-family:courier new,courier,monospace;">nav</span> لتُصبح مرئيَّة مع اضافة فئة <span style="font-family:courier new,courier,monospace;">active</span> تلقائيًّا إلى الزرّ الأوَّل. كذلك تمَّ تفعيل كلتا الإضافتين:<span style="font-family:courier new,courier,monospace;"> LocalScroll</span> <span style="font-family:courier new,courier,monospace;">وScrollTo</span>، إضافةً إلى تطبيق وظائف <span style="font-family:courier new,courier,monospace;">LocalScroll</span> على عناصر <span style="font-family:courier new,courier,monospace;">slideshow-nav </span>عن طريق توجيه تلك العناصر لاستهداف عناصر <span style="font-family:courier new,courier,monospace;">slideshow</span> بالتَّحرُّك على طول محور <span style="font-family:courier new,courier,monospace;">X</span>. <br>
		أخيرًا، للتأكُّد من أنَّ جميع الأزرار في عرض الشَّرائح تعمل مع فئتها النَّشطة (متى تمَّ نقرُها)، سوف نستخدم قاعدة jQuery بسيطة والتي من شأنها إزالة الفئة النَّشطة من الأزرار التي لم يتمّ نقرها. ستظهر تلك الفئة النَّشطة المُحدَّدة ضمن أنماط CSS لعرض لون خلفية رمادي إلى الزر الذي تمَّ نقره فقط. بعمل اختبارٍ سريعٍ في المُتصفِّح سيظهر عرض شرائح JavaScript يعمل على أكمل وجه.
	</p>
</div>

<div id="wmd-preview-section-22">
	<h2 id="الإخراج">
		الإخراج
	</h2>
	إليك هذا <a href="http://HsoubAcademy.github.io/examples/jQuery%20SlideShow/" rel="external nofollow">المثال الحي</a>
</div>

<div id="wmd-preview-section-23">
	<h2 id="ختاما">
		ختامًا
	</h2>

	<p>
		بهذا نكون قد انتهينا من إنشاء عرض شرائح JavaScript بإمكانه إضافة مظهرًا جميلًا إلى صفحات الوِّيب خاصَّتك.
	</p>

	<p>
		ترجمة -وبتصرُّف- للمقال: <a href="http://www.script-tutorials.com/complete-tutorial-on-creating-sliding-enabled-slideshow-using-jquery" rel="external nofollow">A Complete Tutorial On Creating Sliding-Enabled Slideshow Using jQuery</a>.
	</p>
</div>
]]></description><guid isPermaLink="false">108</guid><pubDate>Fri, 26 Jun 2015 15:02:00 +0000</pubDate></item><item><title>&#x645;&#x64F;&#x642;&#x62F;&#x651;&#x645;&#x629; &#x625;&#x644;&#x649;  AJAX &#x648;&#x627;&#x644;&#x643;&#x627;&#x626;&#x646;&#x627;&#x62A; &#x627;&#x644;&#x645;&#x64F;&#x624;&#x62C;&#x651;&#x644;&#x629; (Deferred Objects) &#x639;&#x644;&#x649; jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D9%85%D9%8F%D9%82%D8%AF%D9%91%D9%85%D8%A9-%D8%A5%D9%84%D9%89-ajax-%D9%88%D8%A7%D9%84%D9%83%D8%A7%D8%A6%D9%86%D8%A7%D8%AA-%D8%A7%D9%84%D9%85%D9%8F%D8%A4%D8%AC%D9%91%D9%84%D8%A9-deferred-objects-%D8%B9%D9%84%D9%89-jquery-r64/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_04/ajax-jquery_480x300.jpg.ff506bb54ae31117d37da53d147ec490.jpg" /></p>
<h2 id="-ajax">&rlm;AJAX</h2><p>&rlm;AJAX &#1607;&#1610; &#1575;&#1582;&#1578;&#1589;&#1575;&#1585; &#1604;&#1604;&#1593;&#1576;&#1575;&#1585;&#1577; "asynchronous JavaScript and XML"&#1548; &#1608;&#1607;&#1610; &#1608;&#1587;&#1610;&#1604;&#1577; &#1604;&#1580;&#1604;&#1576; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1605;&#1606; &#1575;&#1604;&#1582;&#1575;&#1583;&#1608;&#1605; &#1583;&#1608;&#1606; &#1575;&#1604;&#1581;&#1575;&#1580;&#1577; &#1604;&#1573;&#1593;&#1575;&#1583;&#1577; &#1578;&#1581;&#1605;&#1610;&#1604; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&#1548; &#1608;&#1607;&#1610; &#1578;&#1602;&#1608;&#1605; &#1593;&#1604;&#1609; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1603;&#1575;&#1574;&#1606; &#1605;&#1615;&#1578;&#1575;&#1581; &#1601;&#1610; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581; &#1575;&#1587;&#1605;&#1607; <code>XMLHttpRequest</code> (&#1571;&#1608; XHR &#1575;&#1582;&#1578;&#1589;&#1575;&#1585;&#1611;&#1575;) &#1604;&#1573;&#1585;&#1587;&#1575;&#1604; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576; &#1573;&#1604;&#1609; &#1575;&#1604;&#1582;&#1575;&#1583;&#1608;&#1605; &#1579;&#1605;&#1617; &#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1615;&#1580;&#1610;&#1576; &#1576;&#1607;&#1575; &#1575;&#1604;&#1582;&#1575;&#1583;&#1608;&#1605;.</p><p>&#1578;&#1615;&#1608;&#1601;&#1617;&#1585; jQuery &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>$.ajax</code>&lrm; (&#1608;&#1608;&#1592;&#1575;&#1574;&#1601; &#1571;&#1582;&#1585;&#1609; &#1605;&#1585;&#1575;&#1601;&#1602;&#1577; &#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577;) &#1604;&#1578;&#1587;&#1607;&#1610;&#1604; &#1575;&#1604;&#1593;&#1605;&#1604; &#1605;&#1593; &#1591;&#1604;&#1576;&#1575;&#1578; XHR &#1601;&#1610; &#1580;&#1605;&#1610;&#1593; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578;.</p><h3 id="-ajax-">&rlm;&lrm;$.ajax&lrm;</h3><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>$.ajax()</code>&lrm; &#1575;&#1604;&#1605;&#1615;&#1585;&#1601;&#1602;&#1577; &#1605;&#1593; jQuery &#1576;&#1593;&#1583;&#1617;&#1577; &#1571;&#1587;&#1575;&#1604;&#1610;&#1576;: &#1573;&#1581;&#1583;&#1575;&#1607;&#1575; &#1571;&#1606; &#1606;&#1615;&#1605;&#1585;&#1617;&#1585; &#1573;&#1604;&#1610;&#1607;&#1575; &#1603;&#1575;&#1574;&#1606;&#1611;&#1575; &#1610;&#1581;&#1608;&#1610; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1601;&#1602;&#1591;&#1548; &#1571;&#1608; &#1571;&#1606; &#1606;&#1615;&#1605;&#1585;&#1617;&#1585; &#1575;&#1604;&#1585;&#1617;&#1575;&#1576;&#1591; &#1605;&#1593; &#1571;&#1608; &#1576;&#1583;&#1608;&#1606; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578;. &#1604;&#1606;&#1615;&#1604;&#1602;&#1616; &#1606;&#1592;&#1585;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1571;&#1608;&#1604;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// &#1571;&#1606;&#1588;&#1574; &#1583;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1575;&#1604;&#1585;&#1617;&#1575;&#1580;&#1593; &#1575;&#1604;&#1617;&#1578;&#1610; &#1587;&#1578;&#1615;&#1606;&#1601;&#1617;&#1584; &#1593;&#1606;&#1583;&#1605;&#1575; &#1610;&#1606;&#1580;&#1581; &#1591;&#1604;&#1576; AJAX
var updatePage = function( resp ) {
  $( '#target').html( resp.people[0].name );
};

// &#1608;&#1593;&#1606;&#1583;&#1605;&#1575; &#1610;&#1601;&#1588;&#1604;
var printError = function( req, status, err ) {
  console.log( 'something went wrong', status, err );
};

// &#1571;&#1606;&#1588;&#1574; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1575;&#1604;&#1584;&#1610; &#1610;&#1589;&#1601; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;
var ajaxOptions = {
  url: '/data/people.json',
  dataType: 'json',
  success: updatePage,
  error: printError
};

// &#1571;&#1585;&#1587;&#1604; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;
$.ajax(ajaxOptions);</pre><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1591;&#1576;&#1593;&#1611;&#1575; &#1571;&#1606; &#1578;&#1615;&#1605;&#1585;&#1617;&#1585; &#1603;&#1575;&#1574;&#1606;&#1611;&#1575; &#1581;&#1585;&#1601;&#1610;&#1617;&#1611;&#1575; &#1605;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611; &#1573;&#1604;&#1609; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577;&lrm;<code>$.ajax()</code> &lrm; &#1608;&#1571;&#1606; &#1578;&#1587;&#1578;&#1582;&#1583;&#1605; &#1583;&#1575;&#1604;&#1617;&#1577; &#1605;&#1580;&#1607;&#1608;&#1604;&#1577; &#1605;&#1581;&#1604;&#1617; <code>success</code> &#1608;<code>error</code>&#1548; &#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1603;&#1578;&#1575;&#1576;&#1578;&#1607; &#1571;&#1587;&#1607;&#1604;&#1548; &#1608;&#1589;&#1610;&#1575;&#1606;&#1578;&#1607; &#1601;&#1610; &#1575;&#1604;&#1605;&#1587;&#1578;&#1602;&#1576;&#1604; &#1571;&#1587;&#1607;&#1604;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$.ajax({
  url: '/data/people.json',
  dataType: 'json',
  success: function( resp ) {
    $( '#target').html( resp.people[0].name );
  },
  error: function( req, status, err ) {
    console.log( 'something went wrong', status, err );
  }
});</pre><p>&#1603;&#1605;&#1575; &#1602;&#1604;&#1606;&#1575;&#1548; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577;&lrm;<code>$.ajax()</code> &lrm; &#1576;&#1571;&#1587;&#1604;&#1608;&#1576; &#1579;&#1575;&#1606;&#1613;&#1548; &#1608;&#1584;&#1604;&#1603; &#1576;&#1578;&#1605;&#1585;&#1610;&#1585; &#1575;&#1604;&#1585;&#1617;&#1575;&#1576;&#1591; &#1571;&#1608;&#1617;&#1604;&#1611;&#1575; &#1579;&#1605;&#1617; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1579;&#1575;&#1606;&#1610;&#1611;&#1575; (&#1604;&#1610;&#1587; &#1573;&#1604;&#1586;&#1575;&#1605;&#1610;&#1617;&#1611;&#1575;). &#1610;&#1615;&#1601;&#1610;&#1583;&#1603; &#1607;&#1584;&#1575; &#1601;&#1610; &#1581;&#1575;&#1604; &#1585;&#1594;&#1576;&#1578; &#1601;&#1610; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617;&#1577; &#1604;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &#1571;&#1608; &#1601;&#1610; &#1581;&#1575;&#1604; &#1585;&#1594;&#1576;&#1578; &#1601;&#1610; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1606;&#1601;&#1587;&#1607; &#1604;&#1571;&#1603;&#1579;&#1585; &#1605;&#1606; &#1585;&#1575;&#1576;&#1591;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$.ajax( '/data/people.json', {
  type: 'GET',
  dataType: 'json',
  success: function( resp ) {
    console.log( resp.people );
  },
  error: function( req, status, err ) {
    console.log( 'something went wrong', status, err );
  }
});</pre><p>&#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602;&#1548; &#1604;&#1575; &#1578;&#1588;&#1578;&#1585;&#1591; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &#1587;&#1608;&#1609; &#1575;&#1604;&#1585;&#1617;&#1575;&#1576;&#1591;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617; &#1573;&#1590;&#1575;&#1601;&#1577; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1578;&#1587;&#1605;&#1581; &#1604;&#1606;&#1575; &#1576;&#1573;&#1582;&#1576;&#1575;&#1585; jQuery &#1576;&#1606;&#1608;&#1593; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1615;&#1585;&#1587;&#1604;&#1607;&#1575;&#1548; &#1608;&#1571;&#1610; &#1601;&#1593;&#1604; HTTP &#1606;&#1587;&#1578;&#1582;&#1583;&#1605;&#1607; (POST&#1548; GET&#1548; &#1573;&#1604;&#1582;...&rlm;&rlm;)&#1548; &#1608;&#1605;&#1575; &#1606;&#1608;&#1593; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1578;&#1608;&#1602;&#1617;&#1593; &#1575;&#1587;&#1578;&#1602;&#1576;&#1575;&#1604;&#1607;&#1575; &#1605;&#1606; &#1575;&#1604;&#1582;&#1575;&#1583;&#1608;&#1605;&#1548; &#1608;&#1605;&#1575; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1580;&#1576; &#1601;&#1593;&#1604;&#1607; &#1573;&#1606; &#1606;&#1580;&#1581; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576; &#1571;&#1608; &#1601;&#1588;&#1604;...</p><p>&#1575;&#1591;&#1617;&#1604;&#1593; &#1593;&#1604;&#1609; <a rel="external nofollow" href="http://api.jquery.com/jQuery.ajax/#jQuery-ajax-settings">&#1608;&#1579;&#1575;&#1574;&#1602; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577;&lrm;<code>$.ajax()</code> &lrm;</a> &#1604;&#1602;&#1585;&#1575;&#1569;&#1577; &#1603;&#1575;&#1605;&#1604; &#1575;&#1604;&#1582;&#1610;&#1575;&#1585;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1605;&#1603;&#1606; &#1573;&#1590;&#1575;&#1601;&#1578;&#1607;&#1575; &#1573;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578;.</p><h3 id="-a-ajax-">&rlm;A &#1601;&#1610; AJAX &#1578;&#1593;&#1606;&#1610; "&#1604;&#1575;&#1605;&#1578;&#1586;&#1575;&#1605;&#1606;"</h3><p>&#1578;&#1580;&#1585;&#1610; &#1591;&#1604;&#1576;&#1575;&#1578; AJAX &#1576;&#1589;&#1608;&#1585;&#1577; <em>&#1604;&#1575; &#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577;</em>&#1548; &#1608;&#1607;&#1584;&#1575; &#1610;&#1593;&#1606;&#1610; &#1571;&#1606;&#1617; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577;&lrm;<code>$.ajax</code> &lrm; &#1578;&#1606;&#1578;&#1607;&#1610; &#1602;&#1576;&#1604; &#1575;&#1606;&#1578;&#1607;&#1575;&#1569; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;&#1548; &#1608;&#1602;&#1576;&#1604; &#1571;&#1606; &#1578;&#1615;&#1587;&#1578;&#1583;&#1593;&#1609; &#1583;&#1617;&#1575;&#1604;&#1577; <code>success</code>&#1548; &#1571;&#1610;&#1617; &#1571;&#1606;&#1617; &#1580;&#1605;&#1604;&#1577; <code>return</code> &#1578;&#1615;&#1606;&#1601;&#1617;&#1584; &#1602;&#1576;&#1604; &#1571;&#1606; &#1610;&#1589;&#1604; &#1580;&#1608;&#1575;&#1576; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;. &#1601;&#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; <code>getSomeData</code> &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610; &#1587;&#1578;&#1615;&#1593;&#1610;&#1583; &#1602;&#1610;&#1605;&#1577; <code>data</code> &#1602;&#1576;&#1604; &#1571;&#1606; &#1578;&#1615;&#1593;&#1585;&#1617;&#1601;&#1548; &#1605;&#1605;&#1575; &#1610;&#1572;&#1583;&#1617;&#1610; &#1573;&#1604;&#1609; &#1608;&#1602;&#1608;&#1593; &#1582;&#1591;&#1571;:</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1606;&#1589;&#1617; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1594;&#1610;&#1585; &#1587;&#1604;&#1610;&#1605;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var getSomeData = function() {
  var data;

  $.ajax({
    url: '/data/people.json',
    dataType: 'json',
    success: function(resp) {
      data = resp.people;
    }
  });

  return data;
}

$( '#target' ).html( getSomeData().people[0].name );</pre><h3 id="-x-ajax-json-">&rlm;X &#1601;&#1610; AJAX &#1578;&#1593;&#1606;&#1610; JSON!</h3><p>&#1608;&#1590;&#1593; &#1575;&#1604;&#1605;&#1589;&#1591;&#1604;&#1581; <a rel="external nofollow" href="http://www.adaptivepath.com/ideas/ajax-new-approach-web-applications">AJAX</a> &#1593;&#1575;&#1605; 2005 &#1604;&#1610;&#1589;&#1601; &#1591;&#1585;&#1610;&#1602;&#1577; &#1604;&#1580;&#1604;&#1576; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1605;&#1606; &#1575;&#1604;&#1582;&#1575;&#1583;&#1608;&#1605; &#1583;&#1608;&#1606; &#1575;&#1604;&#1581;&#1575;&#1580;&#1577; &#1604;&#1573;&#1593;&#1575;&#1583;&#1577; &#1578;&#1581;&#1605;&#1610;&#1604; &#1603;&#1575;&#1605;&#1604; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;. &#1601;&#1610; &#1584;&#1604;&#1603; &#1575;&#1604;&#1608;&#1602;&#1578;&#1548; &#1603;&#1575;&#1606;&#1578; &#1575;&#1604;&#1589;&#1617;&#1610;&#1594;&#1577; &#1575;&#1604;&#1571;&#1603;&#1579;&#1585; &#1588;&#1610;&#1608;&#1593;&#1611;&#1575; &#1604;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1585;&#1587;&#1604;&#1607;&#1575; &#1575;&#1604;&#1582;&#1608;&#1575;&#1583;&#1605; &#1607;&#1610; <a rel="external nofollow" href="http://en.wikipedia.org/wiki/XML">XML</a>&#1548; &#1571;&#1605;&#1617;&#1575; &#1575;&#1604;&#1610;&#1608;&#1605;&#1548; &#1601;&#1573;&#1606;&#1617; <a rel="external nofollow" href="http://www.json.org/json-ar.html">JSON</a> &#1607;&#1610; &#1575;&#1604;&#1589;&#1617;&#1610;&#1594;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1593;&#1578;&#1605;&#1583;&#1607;&#1575; &#1571;&#1603;&#1579;&#1585; &#1575;&#1604;&#1578;&#1617;&#1591;&#1576;&#1610;&#1602;&#1575;&#1578; &#1575;&#1604;&#1581;&#1583;&#1610;&#1579;&#1577;.</p><p>&#1589;&#1610;&#1594;&#1577; JSON &#1601;&#1610; &#1571;&#1587;&#1575;&#1587;&#1607;&#1575; &#1607;&#1610; &#1587;&#1604;&#1587;&#1604;&#1577; &#1606;&#1589;&#1617;&#1610;&#1617;&#1577; (string) &#1578;&#1615;&#1605;&#1579;&#1617;&#1604; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578;&#1548; &#1608;&#1578;&#1576;&#1583;&#1608; &#1605;&#1615;&#1588;&#1575;&#1576;&#1607;&#1577; &#1603;&#1579;&#1610;&#1585;&#1611;&#1575; &#1604;&#1603;&#1575;&#1574;&#1606; JavaScript &#1593;&#1575;&#1583;&#1610;&#1617;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617;&#1607;&#1575; &#1604;&#1575; &#1578;&#1587;&#1578;&#1591;&#1610;&#1593; &#1578;&#1605;&#1579;&#1610;&#1604; &#1603;&#1604;&#1617; &#1571;&#1606;&#1608;&#1575;&#1593; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1587;&#1578;&#1591;&#1610;&#1593; &#1603;&#1575;&#1574;&#1606; JavaScript &#1578;&#1605;&#1579;&#1610;&#1604;&#1607;&#1575;. &#1601;&#1605;&#1579;&#1604;&#1611;&#1575;: &#1604;&#1575; &#1610;&#1605;&#1603;&#1606; &#1604;&#1600;JSON &#1578;&#1605;&#1579;&#1610;&#1604; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1575;&#1604;&#1578;&#1617;&#1575;&#1585;&#1610;&#1582; (<code>Date</code>) &#1608;&#1604;&#1575; &#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604; (functions). &#1601;&#1610;&#1605;&#1575; &#1610;&#1604;&#1610; &#1605;&#1579;&#1575;&#1604; &#1593;&#1606; &#1606;&#1589;&#1617; JSON&#1548; &#1604;&#1575;&#1581;&#1592; &#1603;&#1610;&#1601; &#1578;&#1615;&#1581;&#1575;&#1591; &#1603;&#1604;&#1617; &#1571;&#1587;&#1605;&#1575;&#1569; &#1575;&#1604;&#1582;&#1589;&#1575;&#1574;&#1589; &#1576;&#1593;&#1604;&#1575;&#1605;&#1578;&#1610; &#1575;&#1602;&#1578;&#1576;&#1575;&#1587; &#1605;&#1615;&#1590;&#1575;&#1593;&#1601;&#1578;&#1610;&#1606;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">{ "people" : [
  {
    "name" : "Ben",
    "url" : "http://benalman.com/",
    "bio" : "I create groovy websites, useful jQuery plugins, and play a mean funk bass. I'm also Director of Pluginization at @bocoup."
  },
  {
    "name" : "Rebecca",
    "url" : "http://rmurphey.com",
    "bio" : "Senior JS dev at Bocoup"
  },
  {
    "name" : "Jory",
    "url" : "http://joryburson.com",
    "bio" : "super-enthusiastic about open web education @bocoup. lover of media, art, and fake mustaches."
  }
] }</pre><p>&#1578;&#1584;&#1603;&#1617;&#1585; &#1571;&#1606;&#1617; <em>JSON &#1607;&#1608; &#1578;&#1605;&#1579;&#1610;&#1604; &#1606;&#1589;&#1617;&#1610;&#1617; &#1604;&#1603;&#1575;&#1574;&#1606;</em>&#1548; &#1605;&#1575; &#1610;&#1593;&#1606;&#1610; &#1571;&#1606;&#1617;&#1607; &#1610;&#1580;&#1576; &#1578;&#1601;&#1587;&#1610;&#1585; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577; &#1575;&#1604;&#1606;&#1617;&#1589;&#1610;&#1617;&#1577; &#1604;&#1578;&#1581;&#1608;&#1610;&#1604;&#1607;&#1575; &#1573;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; JavaScript &#1593;&#1575;&#1583;&#1610;&#1617; &#1602;&#1576;&#1604; &#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593;&#1607;&#1575;. &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1593;&#1605;&#1604; &#1605;&#1593; &#1580;&#1608;&#1575;&#1576; &#1608;&#1585;&#1583; &#1605;&#1606; &#1575;&#1604;&#1582;&#1575;&#1583;&#1608;&#1605; &#1576;&#1589;&#1610;&#1594;&#1577; JSON&#1548; &#1601;&#1573;&#1606;&#1617; jQuery &#1578;&#1578;&#1608;&#1604;&#1617;&#1609; &#1607;&#1584;&#1607; &#1575;&#1604;&#1605;&#1607;&#1605;&#1617;&#1577; &#1593;&#1606;&#1603;. &#1608;&#1604;&#1603;&#1606; &#1605;&#1606; &#1575;&#1604;&#1605;&#1607;&#1605;&#1617; &#1575;&#1604;&#1578;&#1605;&#1610;&#1610;&#1586; &#1576;&#1610;&#1606; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1575;&#1604;&#1601;&#1593;&#1604;&#1610;&#1617;&#1577;&#1548; &#1608;&#1591;&#1585;&#1610;&#1602;&#1577; &#1578;&#1605;&#1579;&#1610;&#1604;&#1607;&#1575; &#1601;&#1610; JSON.</p><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1573;&#1606; &#1571;&#1585;&#1583;&#1578; &#1573;&#1606;&#1588;&#1575;&#1569; &#1587;&#1604;&#1587;&#1604;&#1577; JSON &#1606;&#1589;&#1617;&#1610;&#1617;&#1577; &#1605;&#1606; &#1603;&#1575;&#1574;&#1606; JavaScript &#1571;&#1608; &#1578;&#1601;&#1587;&#1610;&#1585; &#1587;&#1604;&#1587;&#1604;&#1577; JSON &#1606;&#1589;&#1617;&#1610;&#1617;&#1577; &#1604;&#1578;&#1581;&#1608;&#1610;&#1604;&#1607;&#1575; &#1573;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; JavaScript &#1583;&#1608;&#1606; &#1575;&#1604;&#1575;&#1587;&#1578;&#1593;&#1575;&#1606;&#1577; &#1576;&#1600;jQuery&#1548; &#1601;&#1573;&#1606;&#1617; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578; &#1575;&#1604;&#1581;&#1583;&#1610;&#1579;&#1577; &#1578;&#1615;&#1602;&#1583;&#1617;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1578;&#1610;&#1606; &lrm;<code>JSON.stringify()</code>&lrm; &#1608;&lrm;<code>JSON.parse()</code>&lrm;&#1548; &#1608;&#1610;&#1605;&#1603;&#1606; &#1573;&#1590;&#1575;&#1601;&#1577; &#1607;&#1584;&#1607; &#1575;&#1604;&#1582;&#1589;&#1575;&#1574;&#1589; &#1573;&#1604;&#1609; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578; &#1575;&#1604;&#1602;&#1583;&#1610;&#1605;&#1577; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1605;&#1603;&#1578;&#1576;&#1577; <a rel="external nofollow" href="https://github.com/douglascrockford/JSON-js"><code>json2.js</code></a>. &#1578;&#1608;&#1601;&#1617;&#1585; jQuery &#1571;&#1610;&#1590;&#1611;&#1575; &#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>jQuery.parseJSON()</code>&lrm;&#1548; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1608;&#1575;&#1601;&#1602; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>JSON.parse()</code>&lrm; &#1601;&#1610; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578;&#1548; &#1573;&#1604;&#1617;&#1575; &#1571;&#1606;&#1617;&#1607;&#1575; &#1604;&#1575; &#1578;&#1608;&#1601;&#1617;&#1585; &#1608;&#1592;&#1610;&#1601;&#1577; &#1578;&#1615;&#1602;&#1575;&#1576;&#1604; &lrm;<code>JSON.stringify()</code>&lrm;.</em></p><h3 id="-">&#1608;&#1592;&#1575;&#1574;&#1601; &#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577;</h3><p>&#1573;&#1606; &#1603;&#1575;&#1606; &#1603;&#1604;&#1617; &#1605;&#1575; &#1606;&#1585;&#1610;&#1583;&#1607; &#1573;&#1585;&#1587;&#1575;&#1604; &#1591;&#1604;&#1576; &#1576;&#1587;&#1610;&#1591;&#1548; &#1583;&#1608;&#1606; &#1575;&#1604;&#1575;&#1607;&#1578;&#1605;&#1575;&#1605; &#1576;&#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1571;&#1582;&#1591;&#1575;&#1569; &#1575;&#1604;&#1617;&#1578;&#1610; &#1602;&#1583; &#1578;&#1602;&#1593;&#1548; &#1601;&#1573;&#1606;&#1617; jQuery &#1578;&#1615;&#1608;&#1601;&#1617;&#1585; &#1608;&#1592;&#1575;&#1574;&#1601; &#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577; &#1578;&#1587;&#1605;&#1581; &#1604;&#1606;&#1575; &#1576;&#1601;&#1593;&#1604; &#1584;&#1604;&#1603;. &#1578;&#1587;&#1578;&#1602;&#1576;&#1604; &#1603;&#1604; &#1608;&#1592;&#1610;&#1601;&#1577; &#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577; &#1585;&#1575;&#1576;&#1591;&#1611;&#1575; &#1608;&#1603;&#1575;&#1574;&#1606; &#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1594;&#1610;&#1585; &#1573;&#1604;&#1586;&#1575;&#1605;&#1610;&#1617;&#1548; &#1608;&#1583;&#1575;&#1604;&#1617;&#1577; &#1578;&#1615;&#1587;&#1578;&#1583;&#1593;&#1609; &#1593;&#1606;&#1583; &#1606;&#1580;&#1575;&#1581; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576; &#1601;&#1602;&#1591;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$.get( '/data/people.html', function( html ){
  $( '#target' ).html( html );
});

$.post( '/data/save', { name: 'Rebecca' }, function( resp ) {
  console.log( resp );
});</pre><h3 id="-">&#1573;&#1585;&#1587;&#1575;&#1604; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1608;&#1575;&#1604;&#1593;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1606;&#1617;&#1605;&#1575;&#1584;&#1580;</h3><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1573;&#1585;&#1587;&#1575;&#1604; &#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1605;&#1593; &#1591;&#1604;&#1576;&#1606;&#1575; &#1576;&#1578;&#1593;&#1610;&#1610;&#1606; &#1602;&#1610;&#1605;&#1577; &#1604;&#1604;&#1582;&#1575;&#1589;&#1577; <code>data</code> &#1601;&#1610; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578;&#1548; &#1571;&#1608; &#1578;&#1605;&#1585;&#1610;&#1585; &#1603;&#1575;&#1574;&#1606; &#1603;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604; &#1579;&#1575;&#1606;&#1613; &#1604;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577;.</p><p>&#1587;&#1578;&#1615;&#1590;&#1575;&#1601; &#1607;&#1584;&#1607; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1573;&#1604;&#1609; &#1575;&#1604;&#1585;&#1617;&#1575;&#1576;&#1591; &#1601;&#1610; &#1591;&#1604;&#1576;&#1575;&#1578; GET &#1576;&#1589;&#1608;&#1585;&#1577; "&#1580;&#1605;&#1604;&#1577; &#1575;&#1587;&#1578;&#1593;&#1604;&#1575;&#1605;" (query string)&#1548; &#1571;&#1605;&#1617;&#1575; &#1601;&#1610; &#1591;&#1604;&#1576;&#1575;&#1578; POST &#1601;&#1573;&#1606;&#1617;&#1607;&#1575; &#1587;&#1578;&#1615;&#1585;&#1587;&#1604; &#1603;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1606;&#1605;&#1608;&#1584;&#1580;. &#1578;&#1608;&#1601;&#1617;&#1585; jQuery &#1608;&#1592;&#1610;&#1601;&#1577; &#1605;&#1615;&#1601;&#1610;&#1583;&#1577; &lrm;<code>.serialize()</code>&lrm; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1587;&#1578;&#1602;&#1576;&#1604; &#1605;&#1615;&#1583;&#1582;&#1604;&#1575;&#1578; &#1606;&#1605;&#1608;&#1584;&#1580; &#1608;&#1578;&#1615;&#1581;&#1608;&#1617;&#1604;&#1607;&#1575; &#1573;&#1604;&#1609; &#1589;&#1610;&#1594;&#1577; "&#1580;&#1605;&#1604;&#1577; &#1575;&#1587;&#1578;&#1593;&#1604;&#1575;&#1605;" (&#1605;&#1579;&#1604; <code>field1name=field1value&amp;field2name=field2value...</code>):</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'form' ).submit(function( event ) {
  event.preventDefault();

  var form = $( this );

  $.ajax({
    type: 'POST',
    url: '/data/save',
    data: form.serialize(),
    dataType: 'json',
    success: function( resp ) {
      console.log( resp );
    }
  });
});</pre><h3 id="-jqxhr">&rlm;jqXHR</h3><p>&#1578;&#1615;&#1593;&#1610;&#1583;&lrm;<code>$.ajax()</code> &lrm; &#1608;&#1575;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577; &#1575;&#1604;&#1605;&#1585;&#1575;&#1601;&#1602;&#1577; &#1604;&#1607;&#1575;&#1548; &#1603;&#1575;&#1574;&#1606; jqXHR (&#1575;&#1582;&#1578;&#1589;&#1575;&#1585;&#1611;&#1575; <em>&#1604;&#1600;jQuery XML HTTP Request</em>) &#1608;&#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1578;&#1590;&#1605;&#1617;&#1606; &#1608;&#1592;&#1575;&#1574;&#1601; &#1605;&#1615;&#1601;&#1610;&#1583;&#1577;&#1611; &#1603;&#1579;&#1610;&#1585;&#1577;. &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1573;&#1585;&#1587;&#1575;&#1604; &#1591;&#1604;&#1576; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &lrm;<code>$.ajax()</code>&lrm; &#1579;&#1605;&#1617; &#1581;&#1601;&#1592; &#1603;&#1575;&#1574;&#1606; jqXHR &#1601;&#1610; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var req = $.ajax({
  url: '/data/people.json',
  dataType: 'json'
});</pre><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1607;&#1584;&#1575; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1604;&#1585;&#1576;&#1591; &#1575;&#1604;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569;&#1575;&#1578; &#1575;&#1604;&#1585;&#1617;&#1575;&#1580;&#1593;&#1577; &#1576;&#1575;&#1604;&#1591;&#1617;&#1604;&#1576;&#1548; &#1581;&#1578;&#1617;&#1609; &#1576;&#1593;&#1583; &#1571;&#1606; &#1610;&#1603;&#1578;&#1605;&#1604; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;. &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1605;&#1579;&#1604;&#1611;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.then()</code>&lrm; (&#1579;&#1615;&#1605;&#1617;&#1614;) &#1604;&#1573;&#1585;&#1601;&#1575;&#1602; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569;&#1610; &#1606;&#1580;&#1575;&#1581; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576; &#1608;&#1601;&#1588;&#1604;&#1607;&#1548; &#1573;&#1584; &#1578;&#1602;&#1576;&#1604; &lrm;<code>.then()</code>&lrm; &#1583;&#1575;&#1604;&#1617;&#1577; &#1571;&#1608; &#1575;&#1579;&#1606;&#1578;&#1610;&#1606;&#1548; &#1578;&#1587;&#1578;&#1583;&#1593;&#1609; &#1575;&#1604;&#1571;&#1608;&#1604;&#1609; &#1593;&#1606;&#1583; &#1606;&#1580;&#1575;&#1581; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;&#1548; &#1608;&#1575;&#1604;&#1579;&#1617;&#1575;&#1606;&#1610;&#1577; &#1573;&#1606; &#1601;&#1588;&#1604;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var success = function( resp ) {
  $( '#target' ).append(
    '&lt;p&gt;people: ' + resp.people.length + '&lt;/p&gt;'
  );
  console.log( resp.people );
};

var err = function( req, status, err ) {
  $( '#target' ).append( '&lt;p&gt;something went wrong&lt;/p&gt;' );
};

req.then( success, err );
req.then(function() {
  $( '#target' ).append( '&lt;p&gt;it worked&lt;/p&gt;' );
});</pre><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &lrm;<code>.then()</code>&lrm; &#1593;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576; &#1602;&#1583;&#1585; &#1605;&#1575; &#1606;&#1588;&#1575;&#1569;&#1548; &#1608;&#1587;&#1578;&#1615;&#1606;&#1601;&#1617;&#1584; &#1575;&#1604;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569;&#1575;&#1578; &#1575;&#1604;&#1585;&#1617;&#1575;&#1580;&#1593;&#1577; &#1576;&#1575;&#1604;&#1578;&#1617;&#1585;&#1578;&#1610;&#1576; &#1584;&#1575;&#1578;&#1607; &#1575;&#1604;&#1617;&#1578;&#1610; &#1571;&#1585;&#1601;&#1602;&#1578; &#1608;&#1601;&#1602;&#1607;.</p><p>&#1573;&#1606; &#1604;&#1605; &#1606;&#1615;&#1585;&#1583; &#1573;&#1585;&#1601;&#1575;&#1602; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569;&#1610; &#1575;&#1604;&#1606;&#1617;&#1580;&#1575;&#1581; &#1608;&#1575;&#1604;&#1601;&#1588;&#1604; &#1605;&#1593;&#1611;&#1575;&#1548; &#1601;&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1578;&#1610;&#1606; &lrm;<code>.done()</code>&lrm; &#1608;&lrm;<code>.fail()</code>&lrm; &#1593;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">req.done( success );
req.fail( err );</pre><p>&#1604;&#1608; &#1571;&#1585;&#1583;&#1606;&#1575; &#1573;&#1585;&#1601;&#1575;&#1602; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1585;&#1575;&#1580;&#1593;&#1613; &#1610;&#1615;&#1606;&#1601;&#1617;&#1614;&#1584; &#1583;&#1608;&#1605;&#1611;&#1575;&#1548; &#1576;&#1594;&#1590; &#1575;&#1604;&#1606;&#1617;&#1592;&#1585; &#1593;&#1606; &#1606;&#1580;&#1575;&#1581; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576; &#1571;&#1608; &#1601;&#1588;&#1604;&#1607;&#1548; &#1601;&#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.always()</code>&lrm; &#1593;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">req.always(function() {
  $( '#target' )
    .append( '&lt;p&gt;one way or another, it is done now&lt;/p&gt;' );
});</pre><h3 id="-jsonp">&rlm;JSONP</h3><p>&#1610;&#1587;&#1578;&#1594;&#1585;&#1576; &#1603;&#1579;&#1610;&#1585;&#1612; &#1605;&#1606; &#1575;&#1604;&#1605;&#1576;&#1578;&#1583;&#1574;&#1610;&#1606; &#1601;&#1610; JavaScript &#1601;&#1588;&#1604; &#1591;&#1604;&#1576;&#1575;&#1578; XHR &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1585;&#1587;&#1604;&#1608;&#1606;&#1607;&#1575; &#1573;&#1604;&#1609; &#1606;&#1591;&#1575;&#1602; &#1570;&#1582;&#1585; &#1593;&#1604;&#1609; &#1575;&#1604;&#1573;&#1606;&#1578;&#1585;&#1606;&#1578;&#1548; &#1601;&#1605;&#1579;&#1604;&#1575;&#1611;: &#1610;&#1581;&#1575;&#1608;&#1604; &#1576;&#1593;&#1590; &#1575;&#1604;&#1605;&#1615;&#1591;&#1608;&#1617;&#1585;&#1610;&#1606; &#1580;&#1604;&#1576; &#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1605;&#1606; &#1608;&#1575;&#1580;&#1607;&#1577; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1577; &#1605;&#1606; &#1591;&#1585;&#1601; &#1579;&#1575;&#1604;&#1579; (third-party <abbr title="&#1608;&#1575;&#1580;&#1607;&#1577; &#1576;&#1585;&#1605;&#1580;&#1610;&#1577; | Application Programming Interface"><abbr title="&#1608;&#1575;&#1580;&#1607;&#1577; &#1576;&#1585;&#1605;&#1580;&#1610;&#1577; | Application Programming Interface"><abbr title="&#1608;&#1575;&#1580;&#1607;&#1577; &#1576;&#1585;&#1605;&#1580;&#1610;&#1577; | Application Programming Interface"><abbr title="&#1608;&#1575;&#1580;&#1607;&#1577; &#1576;&#1585;&#1605;&#1580;&#1610;&#1577; | Application Programming Interface"><abbr title="&#1608;&#1575;&#1580;&#1607;&#1577; &#1576;&#1585;&#1605;&#1580;&#1610;&#1577; | Application Programming Interface"><abbr title="&#1608;&#1575;&#1580;&#1607;&#1577; &#1576;&#1585;&#1605;&#1580;&#1610;&#1577; | Application Programming Interface"><abbr title="&#1608;&#1575;&#1580;&#1607;&#1577; &#1576;&#1585;&#1605;&#1580;&#1610;&#1577; | Application Programming Interface">API</abbr></abbr></abbr></abbr></abbr></abbr></abbr>)&#1548; &#1604;&#1610;&#1601;&#1575;&#1580;&#1572;&#1608;&#1575; &#1576;&#1601;&#1588;&#1604; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576; &#1576;&#1575;&#1587;&#1578;&#1605;&#1585;&#1575;&#1585;.</p><p>&#1575;&#1604;&#1587;&#1617;&#1576;&#1576; &#1608;&#1585;&#1575;&#1569; &#1584;&#1604;&#1603; &#1571;&#1606;&#1617; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578; &#1604;&#1575; &#1578;&#1587;&#1605;&#1581; &#1576;&#1573;&#1585;&#1587;&#1575;&#1604; &#1591;&#1604;&#1576;&#1575;&#1578; XHR &#1573;&#1604;&#1609; &#1606;&#1591;&#1575;&#1602;&#1575;&#1578; &#1573;&#1606;&#1578;&#1585;&#1606;&#1578; &#1571;&#1582;&#1585;&#1609; &#1604;&#1571;&#1587;&#1576;&#1575;&#1576; &#1571;&#1605;&#1606;&#1610;&#1617;&#1577;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617; &#1576;&#1593;&#1590; &#1575;&#1604;&#1608;&#1575;&#1580;&#1607;&#1575;&#1578; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1577; &#1578;&#1615;&#1593;&#1610;&#1583; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1576;&#1589;&#1610;&#1594;&#1577; JSONP (&#1575;&#1582;&#1578;&#1589;&#1575;&#1585;&#1611;&#1575; &#1604;&#1600;JSON with Padding)&#1548; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1587;&#1605;&#1581; &#1604;&#1604;&#1605;&#1615;&#1591;&#1608;&#1617;&#1585;&#1610;&#1606; &#1576;&#1580;&#1604;&#1576; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1605;&#1578;&#1580;&#1575;&#1608;&#1586;&#1610;&#1606; &#1581;&#1592;&#1585; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581;.</p><p>&#1575;&#1604;&#1581;&#1602;&#1610;&#1602;&#1577; &#1571;&#1606; JSONP &#1604;&#1610;&#1587; &#1591;&#1604;&#1576; AJAX &#1601;&#1593;&#1604;&#1610;&#1617;&#1611;&#1575;&#1548; &#1601;&#1607;&#1608; &#1604;&#1575; &#1610;&#1587;&#1578;&#1582;&#1583;&#1605; &#1591;&#1604;&#1576; XHR &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1608;&#1601;&#1617;&#1585;&#1607; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581;&#1548; &#1576;&#1604; &#1610;&#1593;&#1605;&#1604; &#1576;&#1573;&#1583;&#1585;&#1575;&#1580; &#1608;&#1587;&#1605; <code>&lt;script&gt;</code> &#1601;&#1610; &#1589;&#1601;&#1581;&#1577; &#1575;&#1604;&#1608;&#1610;&#1576;&#1548; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1581;&#1608;&#1610; &#1576;&#1583;&#1608;&#1585;&#1607; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1575;&#1604;&#1605;&#1591;&#1604;&#1608;&#1576;&#1577;&#1548; &#1605;&#1615;&#1581;&#1575;&#1591;&#1577; &#1576;&#1583;&#1575;&#1604;&#1617;&#1577; &#1578;&#1615;&#1593;&#1610;&#1583; &#1607;&#1584;&#1607; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1593;&#1606;&#1583; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1574;&#1607;&#1575;. &#1604;&#1610;&#1587; &#1607;&#1584;&#1607; &#1575;&#1604;&#1578;&#1617;&#1601;&#1575;&#1589;&#1610;&#1604; &#1605;&#1607;&#1605;&#1617;&#1577; &#1575;&#1604;&#1570;&#1606;&#1548; &#1604;&#1571;&#1606;&#1617; jQuery &#1578;&#1587;&#1605;&#1581; &#1604;&#1603; &#1576;&#1591;&#1604;&#1576; JSONP &#1603;&#1605;&#1575; &#1604;&#1608; &#1603;&#1575;&#1606; XHR &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>$.ajax()</code>&lrm; &#1576;&#1578;&#1593;&#1610;&#1610;&#1606; &#1606;&#1608;&#1593; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; <code>dataType</code> &#1573;&#1604;&#1609; <code>'jsonp'</code> &#1601;&#1610; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578;.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$.ajax({
  url: '/data/search.jsonp',
  data: { q: 'a' },
  dataType: 'jsonp',
  success: function( resp ) {
    $( '#target' ).html( 'Results: ' + resp.results.length );
  }
});</pre><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1593;&#1575;&#1583;&#1577;&#1611; &#1605;&#1575; &#1578;&#1608;&#1601;&#1617;&#1585; &#1575;&#1604;&#1608;&#1575;&#1580;&#1607;&#1575;&#1578; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1577; &#1582;&#1610;&#1575;&#1585;&#1611;&#1575; &#1604;&#1578;&#1593;&#1610;&#1610;&#1606; &#1575;&#1587;&#1605; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1581;&#1610;&#1591; &#1576;&#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578; &#1608;&#1575;&#1604;&#1617;&#1578;&#1610; &#1587;&#1578;&#1615;&#1587;&#1578;&#1583;&#1593;&#1609; &#1601;&#1610; &#1593;&#1606;&#1608;&#1575;&#1606; &#1575;&#1604;&#1585;&#1617;&#1575;&#1576;&#1591;. &#1593;&#1575;&#1583;&#1577;&#1611; &#1605;&#1575; &#1610;&#1603;&#1608;&#1606; &#1607;&#1584;&#1575; &#1575;&#1587;&#1605; &#1605;&#1615;&#1593;&#1575;&#1605;&#1604; &#1575;&#1604;&#1585;&#1617;&#1575;&#1576;&#1591; <code>callback</code>&#1548; &#1608;&#1607;&#1584;&#1575; &#1605;&#1575; &#1578;&#1578;&#1608;&#1602;&#1617;&#1593;&#1607; jQuery &#1605;&#1576;&#1583;&#1574;&#1610;&#1617;&#1611;&#1575;&#1548; &#1573;&#1604;&#1617;&#1575; &#1571;&#1606; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1578;&#1594;&#1610;&#1610;&#1585;&#1607; &#1576;&#1578;&#1593;&#1610;&#1610;&#1606; &#1602;&#1610;&#1605;&#1577; &#1604;&#1604;&#1582;&#1575;&#1589;&#1577; <code>jsonp</code> &#1601;&#1610; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1575;&#1604;&#1617;&#1584;&#1610; &#1578;&#1615;&#1605;&#1585;&#1617;&#1585;&#1607; &#1604;&#1600; &lrm;<code>$.ajax()</code>&lrm;.</em></p><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1571;&#1610;&#1590;&#1611;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &#1575;&#1604;&#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577; &lrm;<code>$.getJSON()</code>&lrm; &#1604;&#1573;&#1585;&#1587;&#1575;&#1604; &#1591;&#1604;&#1576; JSONP&#1548; &#1581;&#1610;&#1579; &#1578;&#1587;&#1578;&#1591;&#1610;&#1593; jQuery &#1578;&#1605;&#1610;&#1610;&#1586;&#1607; &#1605;&#1606; &#1582;&#1604;&#1575;&#1604; &#1608;&#1580;&#1608;&#1583; &lrm;<code>callback=?</code>&lrm; &#1571;&#1608; &#1605;&#1575; &#1610;&#1588;&#1576;&#1607;&#1607;&#1575; &#1601;&#1610; &#1575;&#1604;&#1585;&#1617;&#1575;&#1576;&#1591;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$.getJSON( '/data/search.jsonp?q=a&amp;callback=?',
  function( resp ) {
    $( '#target' ).html( 'Results: ' + resp.results.length );
  }
);</pre><p>&#1605;&#1588;&#1575;&#1585;&#1603;&#1577; &#1575;&#1604;&#1605;&#1608;&#1575;&#1585;&#1583; &#1593;&#1576;&#1585; &#1575;&#1604;&#1571;&#1589;&#1608;&#1604; (<a rel="external nofollow" href="http://en.wikipedia.org/wiki/Cross-origin_resource_sharing">cross-origin resource sharing</a> &#1571;&#1608; CORS &#1575;&#1582;&#1578;&#1589;&#1575;&#1585;&#1611;&#1575;) &#1607;&#1610; &#1582;&#1610;&#1575;&#1585;&#1612; &#1570;&#1582;&#1585; &#1604;&#1604;&#1587;&#1617;&#1605;&#1575;&#1581; &#1576;&#1575;&#1604;&#1591;&#1617;&#1604;&#1576;&#1575;&#1578; &#1575;&#1604;&#1593;&#1575;&#1576;&#1585;&#1577; &#1604;&#1604;&#1571;&#1589;&#1608;&#1604;. &#1608;&#1604;&#1603;&#1606;&#1617;&#1607;&#1575; &#1594;&#1610;&#1585; &#1605;&#1583;&#1593;&#1608;&#1605;&#1577; &#1601;&#1610; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578; &#1575;&#1604;&#1602;&#1583;&#1610;&#1605;&#1577;&#1548; &#1603;&#1605;&#1575; &#1571;&#1606;&#1617;&#1607;&#1575; &#1578;&#1581;&#1578;&#1575;&#1580; &#1578;&#1607;&#1610;&#1574;&#1577; &#1582;&#1575;&#1589;&#1617;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1582;&#1575;&#1583;&#1608;&#1605; &#1608;&#1578;&#1593;&#1583;&#1610;&#1604; &#1578;&#1585;&#1608;&#1610;&#1587;&#1575;&#1578; &#1575;&#1604;&#1591;&#1617;&#1604;&#1576;&#1575;&#1578; &#1601;&#1610; XHR &#1604;&#1578;&#1593;&#1605;&#1604;.</p><h2 id="-deferreds-">&#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1575;&#1604;&#1605;&#1615;&#1572;&#1580;&#1617;&#1604;&#1577; (Deferreds)</h2><p>&#1604;&#1610;&#1587;&#1578; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578; jqXHR &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1593;&#1585;&#1617;&#1601;&#1606;&#1575; &#1593;&#1604;&#1610;&#1607;&#1575; &#1573;&#1604;&#1575; "&#1606;&#1603;&#1607;&#1577;" &#1582;&#1575;&#1589;&#1617;&#1577; &#1605;&#1605;&#1617;&#1575; &#1610;&#1615;&#1593;&#1585;&#1601; "&#1576;&#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1575;&#1604;&#1605;&#1572;&#1580;&#1617;&#1604;&#1577;". &#1578;&#1587;&#1605;&#1581; jQuery &#1604;&#1603; &#1576;&#1573;&#1606;&#1588;&#1575;&#1569; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1605;&#1572;&#1580;&#1617;&#1604;&#1577; &#1576;&#1606;&#1601;&#1587;&#1603;&#1548; &#1608;&#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1605;&#1603;&#1606; &#1575;&#1604;&#1575;&#1587;&#1578;&#1601;&#1575;&#1583;&#1577; &#1605;&#1606;&#1607;&#1575; &#1601;&#1610; &#1578;&#1587;&#1607;&#1610;&#1604; &#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1571;&#1608;&#1575;&#1605;&#1585; &#1575;&#1604;&#1604;&#1575;&#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577;&#1548; &#1601;&#1607;&#1610; &#1578;&#1608;&#1601;&#1617;&#1585; &#1591;&#1585;&#1610;&#1602;&#1577; &#1604;&#1604;&#1575;&#1587;&#1578;&#1580;&#1575;&#1576;&#1577; &#1604;&#1593;&#1605;&#1604;&#1610;&#1617;&#1577; &#1578;&#1580;&#1585;&#1610; &#1576;&#1589;&#1608;&#1585;&#1577; &#1594;&#1610;&#1585; &#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577; &#1576;&#1593;&#1583; &#1606;&#1580;&#1575;&#1581;&#1607;&#1575; &#1571;&#1608; &#1601;&#1588;&#1604;&#1607;&#1575;&#1548; &#1608;&#1578;&#1580;&#1606;&#1617;&#1576;&#1603; &#1575;&#1604;&#1581;&#1575;&#1580;&#1577; &#1604;&#1603;&#1578;&#1575;&#1576;&#1577; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569;&#1575;&#1578; &#1585;&#1575;&#1580;&#1593;&#1577; &#1605;&#1615;&#1578;&#1583;&#1575;&#1582;&#1604;&#1577; &#1601;&#1610;&#1605;&#1575; &#1576;&#1610;&#1606;&#1607;&#1575;.</p><h2 id="-deferred-">&rlm;&lrm;$.Deferred&lrm;</h2><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1573;&#1606;&#1588;&#1575;&#1569; &#1603;&#1575;&#1574;&#1606;&#1613; &#1605;&#1572;&#1580;&#1617;&#1604; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <code>&rlm;&lrm;$.Deferred()&lrm;</code>. &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610; &#1606;&#1615;&#1606;&#1601;&#1617;&#1584; &#1583;&#1575;&#1604;&#1577; &#1583;&#1575;&#1582;&#1604; <code>setTimeout</code>&#1548; &#1579;&#1605;&#1617; "&#1606;&#1601;&#1610;" (resolve) &#1576;&#1608;&#1593;&#1583;&#1606;&#1575; &#1576;&#1573;&#1593;&#1575;&#1583;&#1577; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1585;&#1580;&#1593;&#1607;&#1575; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1607;&#1584;&#1607;. &#1606;&#1615;&#1593;&#1610;&#1583; &#1575;&#1604;&#1608;&#1593;&#1583; (promise)&#1548; &#1608;&#1607;&#1608; &#1603;&#1575;&#1574;&#1606; &#1610;&#1605;&#1603;&#1606; &#1585;&#1576;&#1591; &#1575;&#1604;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569;&#1575;&#1578; &#1575;&#1604;&#1585;&#1617;&#1575;&#1580;&#1593;&#1577; &#1576;&#1607;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617;&#1607; &#1604;&#1575; &#1610;&#1572;&#1579;&#1617;&#1585; &#1601;&#1610; &#1606;&#1578;&#1610;&#1580;&#1577; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1605;&#1572;&#1580;&#1617;&#1604; &#1576;&#1581;&#1583;&#1617; &#1584;&#1575;&#1578;&#1607;. &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; "&#1575;&#1604;&#1573;&#1582;&#1604;&#1575;&#1601;" (reject) &#1576;&#1575;&#1604;&#1608;&#1593;&#1583; &#1573;&#1584;&#1575; &#1608;&#1602;&#1593; &#1582;&#1591;&#1571; &#1605;&#1575; &#1571;&#1579;&#1606;&#1575;&#1569; &#1593;&#1605;&#1604; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function doSomethingLater( fn, time ) {
  var dfd = $.Deferred();

  setTimeout(function() {
    dfd.resolve( fn() );
  }, time || 0);

  return dfd.promise();
}

var promise = doSomethingLater(function() {
  console.log( 'This function will be called in 100ms' );
}, 100);</pre><h2 id="-then-done-fail-always-">&rlm;&lrm;.then()&lrm; &#1608;&lrm;.done()&lrm; &#1608;&lrm;.fail()&lrm; &#1608;&lrm;.always()&lrm;</h2><p>&#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1585;&#1576;&#1591; &#1583;&#1608;&#1575;&#1604;&#1617; &#1578;&#1578;&#1608;&#1604;&#1617;&#1609; &#1581;&#1575;&#1604;&#1575;&#1578; &#1575;&#1604;&#1582;&#1591;&#1571; &#1608;&#1575;&#1604;&#1606;&#1617;&#1580;&#1575;&#1581; &#1576;&#1575;&#1604;&#1608;&#1593;&#1608;&#1583;&#1548; &#1578;&#1605;&#1575;&#1605;&#1611;&#1575; &#1603;&#1605;&#1575; &#1601;&#1610; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578; jqXHR:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function doSomethingLater( fn, time ) {
  var dfd = $.Deferred();

  setTimeout(function() {
    dfd.resolve( fn() );
  }, time || 0);

  return dfd.promise();
}

var success = function( resp ) {
  $( '#target' ).html( 'it worked' );
};

var err = function( req, status, err ) {
  $( '#target' ).html( 'it failed' );
};

var dfd = doSomethingLater(function() { /* ... */ }, 100);

dfd.then( success, err );</pre><h2 id="-pipe-">&rlm;&lrm;.pipe()&lrm;</h2><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; <code>&rlm;&lrm;.pipe()&lrm;</code> &#1604;&#1604;&#1608;&#1593;&#1608;&#1583; &#1604;&#1604;&#1575;&#1587;&#1578;&#1580;&#1575;&#1576;&#1577; &#1573;&#1604;&#1609; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1608;&#1601;&#1609; &#1608;&#1584;&#1604;&#1603; &#1576;&#1578;&#1593;&#1583;&#1610;&#1604;&#1607;&#1575; &#1579;&#1605;&#1617; &#1573;&#1593;&#1575;&#1583;&#1577; &#1603;&#1575;&#1574;&#1606; &#1605;&#1572;&#1580;&#1617;&#1604; &#1580;&#1583;&#1610;&#1583;.</p><p>&#1578;&#1593;&#1605;&#1604; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; <code>&rlm;&lrm;.then()&lrm;</code> &#1576;&#1583;&#1569;&#1611;&#1575; &#1605;&#1606; &#1575;&#1604;&#1573;&#1589;&#1583;&#1575;&#1585;&#1577; 1.8 &#1605;&#1606; jQuery &#1603;&#1605;&#1575; &#1578;&#1593;&#1605;&#1604; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; <code>&rlm;&lrm;.pipe()&lrm;</code>.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function doSomethingLater( fn, time ) {
  var dfd = $.Deferred();

  setTimeout(function() {
    dfd.resolve( fn() );
  }, time || 0);

  return dfd.promise();
}

var dfd = doSomethingLater(function() { return 1; }, 100);

dfd
  .pipe(function(resp) { return resp + ' ' + resp; })
  .done(function(upperCaseResp) {
    $( '#target' ).html( upperCaseResp );
  });</pre><h2 id="-">&#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1593;&#1605;&#1604;&#1610;&#1617;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1602;&#1583; &#1578;&#1603;&#1608;&#1606; &#1604;&#1575;&#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577;</h2><p>&#1571;&#1581;&#1610;&#1575;&#1606;&#1611;&#1575; &#1578;&#1603;&#1608;&#1606; &#1604;&#1583;&#1610;&#1606;&#1575; &#1608;&#1592;&#1610;&#1601;&#1577; &#1602;&#1583; &#1578;&#1593;&#1605;&#1604; &#1576;&#1589;&#1608;&#1585;&#1577; &#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577; &#1571;&#1608; &#1604;&#1575; &#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577; &#1608;&#1601;&#1602; &#1592;&#1585;&#1608;&#1601; &#1605;&#1615;&#1593;&#1610;&#1617;&#1606;&#1577;&#1548; &#1601;&#1605;&#1579;&#1604;&#1611;&#1575;: &#1583;&#1575;&#1604;&#1617;&#1577; &#1578;&#1602;&#1608;&#1605; &#1576;&#1593;&#1605;&#1604;&#1610;&#1617;&#1577; &#1604;&#1575; &#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577; &#1571;&#1608;&#1617;&#1604; &#1605;&#1585;&#1617;&#1577; &#1578;&#1615;&#1587;&#1578;&#1583;&#1593;&#1609; &#1601;&#1610;&#1607;&#1575;&#1548; &#1579;&#1605;&#1617; &#1578;&#1615;&#1582;&#1586;&#1617;&#1606; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1571;&#1606;&#1578;&#1580;&#1578;&#1607;&#1575; &#1575;&#1604;&#1593;&#1605;&#1604;&#1610;&#1617;&#1577; &#1604;&#1578;&#1615;&#1593;&#1610;&#1583;&#1607;&#1575; &#1605;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611; &#1593;&#1606;&#1583; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569;&#1607;&#1575; &#1605;&#1615;&#1587;&#1578;&#1602;&#1576;&#1604;&#1611;&#1575;. &#1601;&#1610; &#1607;&#1584;&#1607; &#1575;&#1604;&#1581;&#1575;&#1604;&#1577; &#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1575;&#1604;&#1575;&#1587;&#1578;&#1601;&#1575;&#1583;&#1577; &#1605;&#1606; &lrm;<code>$.when()</code>&lrm; &#1604;&#1604;&#1575;&#1587;&#1578;&#1580;&#1575;&#1576;&#1577; &#1604;&#1603;&#1604;&#1575; &#1575;&#1604;&#1581;&#1575;&#1604;&#1578;&#1610;&#1606;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function maybeAsync( num ) {
  var dfd = $.Deferred();

  // &#1571;&#1593;&#1616;&#1583; &#1608;&#1593;&#1583;&#1611;&#1575; &#1605;&#1572;&#1580;&#1617;&#1604;&#1611;&#1575; &#1593;&#1606;&#1583;&#1605;&#1575; num === 1
  if ( num === 1 ) {
    setTimeout(function() {
      dfd.resolve( num );
    }, 100);
    return dfd.promise();
  }

  // &#1571;&#1606;&#1607;&#1616; &#1605;&#1576;&#1575;&#1588;&#1585;&#1577; &#1601;&#1610;&#1605;&#1575; &#1587;&#1608;&#1609; &#1584;&#1604;&#1603;&#1548; &#1605;&#1615;&#1593;&#1610;&#1583;&#1611;&#1575; num
  return num;
}

// &#1607;&#1584;&#1575; &#1587;&#1610;&#1615;&#1580;&#1585;&#1609; &#1576;&#1589;&#1608;&#1585;&#1577; &#1594;&#1610;&#1585; &#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577; &#1608;&#1610;&#1593;&#1616;&#1583; &#1576;&#1573;&#1593;&#1575;&#1583;&#1577; 1
$.when( maybeAsync( 1 ) ).then(function( resp ) {
  $( '#target' ).append( '&lt;p&gt;' + resp + '&lt;/p&gt;' );
});

// &#1607;&#1584;&#1575; &#1587;&#1615;&#1610;&#1593;&#1610;&#1583; 0 &#1605;&#1615;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611;
$.when( maybeAsync( 0 ) ).then(function( resp ) {
  $( '#target' ).append( '&lt;p&gt;' + resp + '&lt;/p&gt;' );
});</pre><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1571;&#1610;&#1590;&#1611;&#1575; &#1578;&#1605;&#1585;&#1610;&#1585; &#1571;&#1603;&#1579;&#1585; &#1605;&#1606; &#1605;&#1593;&#1575;&#1605;&#1604; &#1573;&#1604;&#1609; &lrm;<code>$.when()</code>&lrm;&#1548; &#1575;&#1604;&#1571;&#1605;&#1585; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1587;&#1605;&#1581; &#1604;&#1603; &#1576;&#1583;&#1605;&#1580; &#1593;&#1605;&#1604;&#1610;&#1617;&#1575;&#1578; &#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577; &#1608;&#1604;&#1575; &#1605;&#1578;&#1586;&#1575;&#1605;&#1606;&#1577; &#1605;&#1593;&#1611;&#1575; &#1579;&#1605;&#1617; &#1575;&#1604;&#1581;&#1589;&#1608;&#1604; &#1593;&#1604;&#1609; &#1606;&#1578;&#1575;&#1574;&#1580; &#1578;&#1606;&#1601;&#1610;&#1584;&#1607;&#1575; &#1603;&#1604;&#1617;&#1607;&#1575; &#1603;&#1615;&#1605;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &#1604;&#1604;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1575;&#1604;&#1585;&#1617;&#1575;&#1580;&#1593;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function maybeAsync( num ) {
  var dfd = $.Deferred();

  // &#1571;&#1593;&#1583; &#1608;&#1593;&#1583;&#1611;&#1575; &#1605;&#1572;&#1580;&#1617;&#1604;&#1611;&#1575; &#1593;&#1606;&#1583;&#1605;&#1575; num === 1
  if ( num === 1 ) {
    setTimeout(function() {
      dfd.resolve( num );
    }, 100);
    return dfd.promise();
  }

  // &#1571;&#1606;&#1607;&#1616; &#1605;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611; &#1601;&#1610;&#1605;&#1575; &#1587;&#1608;&#1609; &#1584;&#1604;&#1603;&#1548; &#1605;&#1615;&#1593;&#1610;&#1583;&#1611;&#1575; num
  return num;
}

$.when( maybeAsync( 0 ), maybeAsync( 1 ) )
  .then(function( resp1, resp2 ) {
    var target = $( '#target' );
    target.append( '&lt;p&gt;' + resp1 + '&lt;/p&gt;' );
    target.append( '&lt;p&gt;' + resp2 + '&lt;/p&gt;' );
  });</pre><p>&#1593;&#1606;&#1583;&#1605;&#1575; &#1610;&#1603;&#1608;&#1606; &#1573;&#1581;&#1583;&#1609; &#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &lrm;<code>$.when()</code>&lrm; &#1603;&#1575;&#1574;&#1606; jqXHR&#1548; &#1601;&#1573;&#1606;&#1617;&#1606;&#1575; &#1606;&#1581;&#1589;&#1604; &#1593;&#1604;&#1609; &#1605;&#1589;&#1601;&#1608;&#1601;&#1577; &#1605;&#1606; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &#1578;&#1615;&#1605;&#1585;&#1617;&#1585; &#1573;&#1604;&#1609; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1574;&#1606;&#1575; &#1575;&#1604;&#1585;&#1617;&#1575;&#1580;&#1593;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function maybeAsync( num ) {
  var dfd = $.Deferred();

  // &#1571;&#1593;&#1583; &#1608;&#1593;&#1583;&#1611;&#1575; &#1605;&#1572;&#1580;&#1617;&#1604;&#1611;&#1575; &#1593;&#1606;&#1583;&#1605;&#1575; num === 1
  if ( num === 1 ) {
    setTimeout(function() {
      dfd.resolve( num );
    }, 100);
    return dfd.promise();
  }

  // &#1571;&#1606;&#1607;&#1616; &#1605;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611; &#1601;&#1610;&#1605;&#1575; &#1587;&#1608;&#1609; &#1584;&#1604;&#1603;&#1548; &#1605;&#1615;&#1593;&#1610;&#1583;&#1611;&#1575; num
  return num;
}

$.when( maybeAsync( 0 ), $.get( '/data/people.json' ) )
  .then(function( resp1, resp2 ) {
    console.log( "Both operations are done", resp1, resp2 );
  });</pre><h2 id="-">&#1605;&#1589;&#1575;&#1583;&#1585; &#1573;&#1590;&#1575;&#1601;&#1610;&#1577;</h2><ul><li><a rel="external nofollow" href="http://api.jquery.com/category/ajax/">&#1578;&#1608;&#1579;&#1610;&#1602; AJAX</a></li><li><a rel="external nofollow" href="http://api.jquery.com/jQuery.ajax/#jqXHR">&#1603;&#1575;&#1574;&#1606; jqXHR</a></li><li><a rel="external nofollow" href="http://api.jquery.com/category/deferred-object/">&#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1575;&#1604;&#1605;&#1572;&#1580;&#1617;&#1604;&#1577; &#1601;&#1610; jQuery</a></li></ul><p><span style="line-height: 22.3999996185303px;">&#1578;&#1585;&#1580;&#1605;&#1577; (&#1576;&#1588;&#1610;&#1569; &#1605;&#1606; &#1575;&#1604;&#1578;&#1589;&#1585;&#1601;)&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1587;&#1575;&#1583;&#1587; &#1605;&#1606; &#1587;&#1604;&#1587;&#1604;&#1577; &nbsp;</span><a style="line-height: 22.3999996185303px;" rel="external nofollow" href="http://jqfundamentals.com/">jQuery Fundamentals</a><span style="line-height: 22.3999996185303px;">&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1605;&#1572;&#1604;&#1617;&#1601;&#1578;&#1607;&#1575;&nbsp;Rebecca Murphey.</span></p>
]]></description><guid isPermaLink="false">64</guid><pubDate>Tue, 21 Apr 2015 06:01:00 +0000</pubDate></item><item><title>&#x62A;&#x62D;&#x631;&#x64A;&#x643; &#x627;&#x644;&#x635;&#x651;&#x641;&#x62D;&#x629; &#x628;&#x640;jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%AA%D8%AD%D8%B1%D9%8A%D9%83-%D8%A7%D9%84%D8%B5%D9%91%D9%81%D8%AD%D8%A9-%D8%A8%D9%80jquery-r63/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_04/jquery-effects_480x300.jpg.00f73e067ba3b8e334988c61267fff25.jpg" /></p>
<style type="text/css">code { font-size: 1rem !important; }</style><p>&#1578;&#1580;&#1593;&#1604; jQuery &#1573;&#1590;&#1575;&#1601;&#1577; &#1575;&#1604;&#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578; &#1575;&#1604;&#1581;&#1585;&#1603;&#1610;&#1617;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1571;&#1605;&#1585;&#1611;&#1575; &#1587;&#1607;&#1604;&#1611;&#1575; &#1604;&#1604;&#1594;&#1575;&#1610;&#1577;&#1548; &#1608;&#1610;&#1605;&#1603;&#1606; &#1604;&#1607;&#1584;&#1607; &#1575;&#1604;&#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578; &#1571;&#1606; &#1578;&#1593;&#1578;&#1605;&#1583; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617;&#1577; &#1571;&#1608; &#1573;&#1593;&#1583;&#1575;&#1583;&#1575;&#1578; &#1610;&#1615;&#1593;&#1610;&#1617;&#1606;&#1607;&#1575; &#1575;&#1604;&#1605;&#1615;&#1591;&#1608;&#1617;&#1585;. &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1571;&#1610;&#1590;&#1611;&#1575; &#1573;&#1606;&#1588;&#1575;&#1569; &#1581;&#1585;&#1603;&#1575;&#1578;&#1613; &#1605;&#1615;&#1582;&#1589;&#1617;&#1589;&#1577; &#1605;&#1606; &#1582;&#1589;&#1575;&#1574;&#1589; CSS &#1593;&#1588;&#1608;&#1575;&#1574;&#1610;&#1617;&#1577;.</p><p>&#1575;&#1591;&#1617;&#1604;&#1593; &#1593;&#1604;&#1609; <a rel="external nofollow" href="http://api.jquery.com/category/effects/">&#1608;&#1579;&#1575;&#1574;&#1602; &#1575;&#1604;&#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578;</a> &#1604;&#1578;&#1601;&#1575;&#1589;&#1610;&#1604; &#1571;&#1603;&#1579;&#1585; &#1593;&#1606; &#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578; jQuery.</p><p><em><strong>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577; &#1605;&#1607;&#1605;&#1617;&#1577; &#1593;&#1606; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578;:</strong> &#1610;&#1603;&#1608;&#1606; &#1573;&#1606;&#1580;&#1575;&#1586; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; CSS &#1576;&#1583;&#1604; JavaScript &#1571;&#1603;&#1579;&#1585; &#1603;&#1601;&#1575;&#1569;&#1577;&#1611; &#1601;&#1610; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578; &#1575;&#1604;&#1581;&#1583;&#1610;&#1579;&#1577;&#1548; &#1608;&#1582;&#1589;&#1608;&#1589;&#1611;&#1575; &#1601;&#1610; &#1575;&#1604;&#1571;&#1580;&#1607;&#1586;&#1577; &#1575;&#1604;&#1605;&#1581;&#1605;&#1608;&#1604;&#1577;. &#1578;&#1601;&#1575;&#1589;&#1610;&#1604; &#1573;&#1606;&#1580;&#1575;&#1586; &#1607;&#1584;&#1607; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578; &#1582;&#1575;&#1585;&#1580;&#1577;&#1612; &#1593;&#1606; &#1606;&#1591;&#1575;&#1602; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577;&#1548; &#1608;&#1604;&#1603;&#1606; &#1573;&#1606; &#1603;&#1606;&#1578; &#1578;&#1587;&#1578;&#1607;&#1583;&#1601; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578; &#1608;&#1575;&#1604;&#1571;&#1580;&#1607;&#1586;&#1577; &#1575;&#1604;&#1605;&#1581;&#1605;&#1608;&#1604;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1583;&#1593;&#1605; &#1581;&#1585;&#1603;&#1575;&#1578; CSS&#1548; &#1601;&#1602;&#1583; &#1578;&#1585;&#1594;&#1576; &#1576;&#1578;&#1593;&#1610;&#1610;&#1606; &#1575;&#1604;&#1573;&#1593;&#1583;&#1575;&#1583; <code>jQuery.fx.off</code> &#1573;&#1604;&#1609; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; <code>true</code> &#1593;&#1604;&#1609; &#1575;&#1604;&#1571;&#1580;&#1607;&#1586;&#1577; &#1584;&#1575;&#1578; &#1575;&#1604;&#1605;&#1608;&#1575;&#1589;&#1601;&#1575;&#1578; &#1575;&#1604;&#1590;&#1617;&#1593;&#1610;&#1601;&#1577;&#1563; &#1601;&#1607;&#1584;&#1575; &#1605;&#1606; &#1588;&#1571;&#1606;&#1607; &#1573;&#1576;&#1591;&#1575;&#1604; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578; &#1608;&#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1576;&#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1605;&#1591;&#1604;&#1608;&#1576; &#1578;&#1581;&#1585;&#1610;&#1603;&#1607; &#1573;&#1604;&#1609; &#1581;&#1575;&#1604;&#1578;&#1607; &#1575;&#1604;&#1606;&#1617;&#1607;&#1575;&#1574;&#1610;&#1577; &#1605;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611; &#1583;&#1608;&#1606; &#1578;&#1591;&#1576;&#1610;&#1602; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577;.</em></p><h2 id="-jquery">&#1575;&#1604;&#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578; &#1575;&#1604;&#1605;&#1615;&#1585;&#1601;&#1602;&#1577; &#1605;&#1593; jQuery</h2><p>&#1578;&#1615;&#1585;&#1601;&#1614;&#1602; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1576;&#1603;&#1579;&#1585;&#1577; &#1605;&#1593; jQuery &#1603;&#1608;&#1592;&#1575;&#1574;&#1601; &#1610;&#1605;&#1603;&#1606;&#1603; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1572;&#1607;&#1575; &#1593;&#1604;&#1609; &#1571;&#1610; &#1603;&#1575;&#1574;&#1606; jQuery:</p><ul><li>&rlm;&lrm;<code>.show()</code>&lrm;: &#1571;&#1592;&#1607;&#1585; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577;.</li><li>&rlm;&lrm;<code>.hide()</code>&lrm;: &#1571;&#1582;&#1601;&#1616; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577;.</li><li>&rlm;&lrm;<code>.fadeIn()</code>&lrm;: &#1581;&#1585;&#1617;&#1603; &#1592;&#1604;&#1575;&#1604;&#1610;&#1617;&#1577; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; (opacity) &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577; &#1573;&#1604;&#1609; 100%.</li><li>&rlm;&lrm;<code>.fadeOut()</code>&lrm;: &#1581;&#1585;&#1617;&#1603; &#1592;&#1604;&#1575;&#1604;&#1610;&#1617;&#1577; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577; &#1573;&#1604;&#1609; 0%.</li><li>&rlm;&lrm;<code>.slideDown()</code>&lrm;: &#1571;&#1592;&#1607;&#1585; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577; &#1576;&#1581;&#1585;&#1603;&#1577; &#1587;&#1581;&#1576; &#1588;&#1575;&#1602;&#1608;&#1604;&#1610;&#1617;&#1577;.</li><li>&rlm;&lrm;<code>.slideUp()</code>&lrm;: &#1571;&#1582;&#1601;&#1616; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577; &#1576;&#1581;&#1585;&#1603;&#1577; &#1587;&#1581;&#1576; &#1588;&#1575;&#1602;&#1608;&#1604;&#1610;&#1617;&#1577;.</li><li>&rlm;&lrm;<code>.slideToggle()</code>&lrm;: &#1571;&#1582;&#1601;&#1616; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577; &#1571;&#1608; &#1571;&#1592;&#1607;&#1585;&#1607;&#1575; &#1576;&#1581;&#1585;&#1603;&#1577; &#1587;&#1581;&#1576;&#1613; &#1588;&#1575;&#1602;&#1608;&#1604;&#1610;&#1617;&#1577;&#1548; &#1575;&#1593;&#1578;&#1605;&#1575;&#1583;&#1611;&#1575; &#1593;&#1604;&#1609; &#1603;&#1608;&#1606; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577; &#1605;&#1582;&#1601;&#1610;&#1617;&#1577; &#1571;&#1608; &#1592;&#1575;&#1607;&#1585;&#1577;.</li></ul><p>&#1610;&#1587;&#1607;&#1604; &#1578;&#1591;&#1576;&#1610;&#1602; &#1573;&#1581;&#1583;&#1609; &#1607;&#1584;&#1607; &#1575;&#1604;&#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578; &#1593;&#1604;&#1609; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1576;&#1593;&#1583; &#1573;&#1606;&#1588;&#1575;&#1574;&#1607;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( '.hidden' ).show();</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/huxefi/2/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a><span style="line-height: 22.3999996185303px;">&nbsp;(&#1578;&#1571;&#1603;&#1583; &#1605;&#1606; &#1590;&#1594;&#1591; &#1575;&#1604;&#1586;&#1585;&#1617; Run with JS &#1601;&#1610; &#1607;&#1584; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1608;</span><span style="line-height: 22.3999996185303px;">&#1603;&#1604;&#1617; &#1575;&#1604;&#1571;&#1605;&#1579;&#1604;&#1577; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610;&#1577;)</span></p><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1571;&#1610;&#1590;&#1611;&#1575; &#1578;&#1581;&#1583;&#1610;&#1583;&#1615; &#1605;&#1583;&#1617;&#1577; &#1604;&#1604;&#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602;&#1577;&#1548; &#1608;&#1607;&#1606;&#1575;&#1603; &#1591;&#1585;&#1610;&#1602;&#1578;&#1575;&#1606; &#1604;&#1578;&#1581;&#1583;&#1610;&#1583;&#1607;&#1575;&#1548; &#1575;&#1604;&#1571;&#1608;&#1604;&#1609;: &#1578;&#1593;&#1610;&#1610;&#1606; &#1575;&#1604;&#1608;&#1602;&#1578; &#1576;&#1575;&#1604;&#1605;&#1610;&#1604;&#1604;&#1610; &#1579;&#1575;&#1606;&#1610;&#1617;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( '.hidden' ).show( 300 );</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/huxefi/3/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p>&#1608;&#1575;&#1604;&#1579;&#1617;&#1575;&#1606;&#1610;&#1577; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1573;&#1581;&#1583;&#1609; &#1575;&#1604;&#1587;&#1615;&#1585;&#1593;&#1575;&#1578; &#1575;&#1604;&#1605;&#1615;&#1593;&#1585;&#1617;&#1601;&#1577; &#1605;&#1615;&#1587;&#1576;&#1602;&#1611;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( '.hidden' ).show( 'slow' );</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/huxefi/4/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p>&#1593;&#1615;&#1585;&#1617;&#1616;&#1601;&#1578; &#1607;&#1584;&#1607; &#1575;&#1604;&#1587;&#1615;&#1585;&#1593;&#1575;&#1578; &#1601;&#1610; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; <code>jQuert.fx.speeds</code>&#1563; &#1605;&#1605;&#1617;&#1575; &#1610;&#1593;&#1606;&#1610; &#1571;&#1606;&#1617; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1578;&#1593;&#1583;&#1610;&#1604;&#1607; &#1604;&#1578;&#1594;&#1610;&#1610;&#1585; &#1575;&#1604;&#1602;&#1610;&#1605; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617;&#1577;&#1548; &#1571;&#1608; &#1573;&#1590;&#1575;&#1601;&#1577; &#1587;&#1615;&#1585;&#1593;&#1575;&#1578; &#1580;&#1583;&#1610;&#1583;&#1577; &#1573;&#1604;&#1610;&#1607;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// &#1571;&#1593;&#1583; &#1578;&#1593;&#1610;&#1610;&#1606; &#1587;&#1585;&#1593;&#1577;&#1613; &#1605;&#1615;&#1593;&#1585;&#1617;&#1601;&#1577;
jQuery.fx.speeds.fast = 50;

// &#1593;&#1585;&#1617;&#1601; &#1587;&#1585;&#1593;&#1577; &#1580;&#1583;&#1610;&#1583;&#1577;
jQuery.fx.speeds.turtle = 3000;

// &#1576;&#1605;&#1575; &#1571;&#1606;&#1617;&#1606;&#1575; &#1594;&#1610;&#1617;&#1585; &#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1587;&#1617;&#1585;&#1593;&#1577; `fast`&#1548; &#1601;&#1573;&#1606;&#1617; &#1607;&#1584;&#1607; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577; &#1587;&#1578;&#1587;&#1578;&#1594;&#1585;&#1602; 50 &#1605;&#1610;&#1604;&#1604;&#1610; &#1579;&#1575;&#1606;&#1610;&#1577;
$( '.hidden' ).hide( 'fast' );

// &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1587;&#1617;&#1585;&#1593;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1593;&#1585;&#1601;&#1606;&#1575;&#1607;&#1575; &#1576;&#1571;&#1606;&#1601;&#1587;&#1606;&#1575; &#1578;&#1605;&#1575;&#1605;&#1611;&#1575; &#1603;&#1578;&#1604;&#1603; &#1575;&#1604;&#1605;&#1615;&#1593;&#1585;&#1617;&#1601;&#1577; &#1605;&#1587;&#1576;&#1602;&#1611;&#1575;
$( '.other-hidden' ).show( 'turtle' );</pre><p>&#1603;&#1579;&#1610;&#1585;&#1611;&#1575; &#1605;&#1575; &#1610;&#1585;&#1594;&#1576; &#1575;&#1604;&#1605;&#1615;&#1591;&#1608;&#1617;&#1585; &#1576;&#1601;&#1593;&#1604; &#1588;&#1610;&#1569;&#1613; &#1605;&#1575; &#1576;&#1593;&#1583; &#1575;&#1606;&#1578;&#1607;&#1575;&#1569; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577; &#1605;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611;&#1548; &#1601;&#1573;&#1606; &#1581;&#1575;&#1608;&#1604; &#1601;&#1593;&#1604;&#1607; &#1602;&#1576;&#1604; &#1575;&#1606;&#1578;&#1607;&#1575;&#1569; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577;&#1548; &#1601;&#1602;&#1583; &#1610;&#1587;&#1576;&#1617;&#1576; &#1578;&#1588;&#1608;&#1617;&#1607; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577; &#1608;&#1578;&#1602;&#1591;&#1617;&#1593;&#1607;&#1575;&#1548; &#1571;&#1608; &#1602;&#1583; &#1610;&#1581;&#1584;&#1601; &#1587;&#1607;&#1608;&#1611;&#1575; &#1593;&#1606;&#1575;&#1589;&#1585; &#1578;&#1578;&#1581;&#1585;&#1617;&#1603; &#1601;&#1610; &#1604;&#1581;&#1592;&#1577; &#1581;&#1585;&#1603;&#1578;&#1607;&#1575;. &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1578;&#1605;&#1585;&#1610;&#1585; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1585;&#1575;&#1580;&#1593; (callback) &#1573;&#1604;&#1609; &#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577; &#1573;&#1606; &#1585;&#1594;&#1576;&#1578; &#1576;&#1578;&#1606;&#1601;&#1610;&#1584; &#1571;&#1605;&#1585;&#1613; &#1605;&#1575; &#1576;&#1593;&#1583; &#1575;&#1606;&#1578;&#1607;&#1575;&#1569; &#1575;&#1604;&#1578;&#1571;&#1579;&#1610;&#1585;&#1548; &#1608;&#1578;&#1615;&#1588;&#1610;&#1585; <code>this</code> &#1583;&#1575;&#1582;&#1604; &#1607;&#1584;&#1575; &#1575;&#1604;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1573;&#1604;&#1609; &#1593;&#1606;&#1589;&#1585; DOM &#1575;&#1604;&#1582;&#1575;&#1605; &#1575;&#1604;&#1617;&#1584;&#1610; &#1591;&#1615;&#1576;&#1602;&#1617;&#1578; &#1593;&#1604;&#1610;&#1607; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577;&#1548; &#1608;&#1605;&#1579;&#1604;&#1607;&#1575; &#1608;&#1605;&#1579;&#1604; &#1583;&#1608;&#1575;&#1604;&#1617; &#1578;&#1608;&#1604;&#1617;&#1610; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579;&#1548; &#1610;&#1605;&#1603;&#1606; &#1573;&#1581;&#1575;&#1591;&#1577; <code>this</code> &#1576;&#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>$()</code>&lrm; &#1604;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605;&#1607;&#1575; &#1603;&#1603;&#1575;&#1574;&#1606; jQuery:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'p.old' ).fadeOut( 300, function() {
  $( this ).remove();
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/huxefi/5/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p>&#1573;&#1606; &#1604;&#1605; &#1610;&#1581;&#1608;&#1616; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1571;&#1610;&#1617;&#1577; &#1593;&#1606;&#1575;&#1589;&#1585;&#1548; &#1601;&#1604;&#1606; &#1578;&#1615;&#1587;&#1578;&#1583;&#1593;&#1609; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577;. &#1573;&#1606; &#1575;&#1581;&#1578;&#1580;&#1578; &#1573;&#1604;&#1609; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1576;&#1589;&#1585;&#1601; &#1575;&#1604;&#1606;&#1617;&#1592;&#1585; &#1593;&#1606; &#1608;&#1580;&#1608;&#1583; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1571;&#1608; &#1594;&#1610;&#1575;&#1576;&#1607;&#1575; &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;&#1548; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1573;&#1606;&#1588;&#1575;&#1569; &#1583;&#1575;&#1604;&#1617;&#1577; &#1578;&#1578;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1581;&#1575;&#1604;&#1578;&#1610;&#1606;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var oldElements = $( 'p.old' );
var thingToAnimate = $( '#nonexistent' );

// &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1587;&#1578;&#1603;&#1608;&#1606; &#1575;&#1604;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1575;&#1604;&#1585;&#1617;&#1575;&#1580;&#1593; &#1604;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; `show` &#1601;&#1610; &#1581;&#1575;&#1604; &#1608;&#1580;&#1608;&#1583; &#1593;&#1606;&#1575;&#1589;&#1585; &#1606;&#1585;&#1610;&#1583; &#1573;&#1592;&#1607;&#1575;&#1585;&#1607;&#1575;&#1548; &#1601;&#1573;&#1606; &#1604;&#1605; &#1578;&#1608;&#1580;&#1583; &#1571;&#1610;&#1617;&#1577; &#1593;&#1606;&#1575;&#1589;&#1585;&#1548; &#1601;&#1573;&#1606;&#1617;&#1606;&#1575; &#1606;&#1587;&#1578;&#1583;&#1593;&#1610;&#1607;&#1575; &#1605;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611; &#1576;&#1571;&#1606;&#1601;&#1587;&#1606;&#1575;.
var removeOldElements = function() {
  oldElements.remove();
};

if ( thingToAnimate.length ) {

  // &#1587;&#1578;&#1615;&#1587;&#1578;&#1583;&#1593;&#1609; &#1608;&#1592;&#1610;&#1601;&#1578;&#1606;&#1575; &#1576;&#1593;&#1583; &#1575;&#1606;&#1578;&#1607;&#1575;&#1569; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577;
  thingToAnimate.show( 'slow', removeOldElements );

} else {
  removeOldElements();
}</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/huxefi/6/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><h2 id="-animate-">&#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578; &#1605;&#1615;&#1582;&#1589;&#1617;&#1589;&#1577; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &lrm;<code>.animate()</code>&lrm;</h2><p>&#1573;&#1606; &#1604;&#1605; &#1578;&#1615;&#1604;&#1576;&#1617;&#1616; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578; &#1575;&#1604;&#1605;&#1615;&#1585;&#1601;&#1602;&#1577; &#1605;&#1593; jQuery &#1581;&#1575;&#1580;&#1578;&#1603;&#1548; &#1601;&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.animate()</code>&lrm; &#1604;&#1573;&#1606;&#1588;&#1575;&#1569; &#1581;&#1585;&#1603;&#1575;&#1578; &#1605;&#1582;&#1589;&#1617;&#1589;&#1577; &#1602;&#1575;&#1574;&#1605;&#1577; &#1593;&#1604;&#1609; &#1582;&#1589;&#1575;&#1574;&#1589; CSS &#1605;&#1615;&#1578;&#1593;&#1583;&#1617;&#1583;&#1577; (&#1573;&#1581;&#1583;&#1609; &#1575;&#1604;&#1575;&#1587;&#1578;&#1579;&#1606;&#1575;&#1569;&#1575;&#1578;: &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;' <code>color</code> &#1575;&#1604;&#1617;&#1578;&#1610; &#1604;&#1575; &#1610;&#1605;&#1603;&#1606; &#1578;&#1581;&#1585;&#1610;&#1603;&#1607;&#1575;&#1548; &#1608;&#1604;&#1603;&#1606; &#1578;&#1578;&#1608;&#1601;&#1617;&#1585; <a rel="external nofollow" href="https://github.com/jquery/jquery-color/">&#1573;&#1590;&#1575;&#1601;&#1577;</a> &#1578;&#1587;&#1605;&#1581; &#1576;&#1584;&#1604;&#1603;).</p><p>&#1578;&#1602;&#1576;&#1604; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.animate()</code>&lrm; &#1579;&#1604;&#1575;&#1579;&#1577; &#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &#1593;&#1604;&#1609; &#1575;&#1604;&#1571;&#1603;&#1579;&#1585;:</p><ul><li>&#1603;&#1575;&#1574;&#1606; &#1610;&#1615;&#1581;&#1583;&#1617;&#1583; &#1575;&#1604;&#1582;&#1589;&#1575;&#1574;&#1589; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1615;&#1585;&#1575;&#1583; &#1578;&#1581;&#1585;&#1610;&#1603;&#1607;&#1575;</li><li>&#1605;&#1583;&#1617;&#1577; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577;&#1548; &#1605;&#1615;&#1602;&#1583;&#1617;&#1585;&#1577; &#1576;&#1575;&#1604;&#1605;&#1610;&#1604;&#1604;&#1610; &#1579;&#1575;&#1606;&#1610;&#1577;</li><li>&#1583;&#1575;&#1604;&#1617;&#1577; &#1578;&#1615;&#1587;&#1578;&#1583;&#1593;&#1609; &#1593;&#1606;&#1583; &#1575;&#1606;&#1578;&#1607;&#1575;&#1569; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577;</li></ul><p>&#1610;&#1605;&#1603;&#1606; &#1571;&#1606; &#1578;&#1615;&#1593;&#1610;&#1617;&#1606; &#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577; &#1576;&#1603;&#1578;&#1575;&#1576;&#1577; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1606;&#1617;&#1607;&#1575;&#1574;&#1610;&#1617;&#1577; &#1575;&#1604;&#1605;&#1615;&#1585;&#1575;&#1583; &#1575;&#1604;&#1578;&#1617;&#1581;&#1585;&#1610;&#1603; &#1573;&#1604;&#1610;&#1607;&#1575;&#1548; &#1571;&#1608; &#1603;&#1578;&#1575;&#1576;&#1577; &#1575;&#1604;&#1605;&#1602;&#1583;&#1575;&#1585; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1580;&#1576; &#1578;&#1581;&#1585;&#1610;&#1603;&#1607; (&#1575;&#1604;&#1601;&#1585;&#1602; &#1576;&#1610;&#1606; &#1605;&#1608;&#1590;&#1593;&#1610; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577;):</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( '.funtimes' ).animate({
    left: '+=50', // &#1586;&#1583; &#1576;&#1605;&#1602;&#1583;&#1575;&#1585; 50
    opacity: 0.25,
    fontSize: '12px'
  },
  300,
  function() {
    // &#1578;&#1606;&#1601;&#1617;&#1584; &#1593;&#1606;&#1583; &#1575;&#1606;&#1578;&#1607;&#1575;&#1569; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577;
  }
);</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/huxefi/8/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1573;&#1606; &#1571;&#1585;&#1583;&#1578; &#1578;&#1581;&#1585;&#1610;&#1603; &#1582;&#1575;&#1589;&#1617;&#1577; CSS &#1610;&#1581;&#1608;&#1610; &#1575;&#1587;&#1605;&#1607;&#1575; &#1593;&#1604;&#1609; &#1575;&#1604;&#1573;&#1588;&#1575;&#1585;&#1577; "-"&#1548; &#1601;&#1593;&#1604;&#1610;&#1603; &#1578;&#1581;&#1608;&#1610;&#1604; &#1575;&#1604;&#1575;&#1587;&#1605; &#1573;&#1604;&#1609; &#1589;&#1610;&#1594;&#1577; camelCase &#1571;&#1608;&#1617;&#1604;&#1611;&#1575; &#1573;&#1606; &#1604;&#1605; &#1578;&#1588;&#1571; &#1573;&#1581;&#1575;&#1591;&#1577; &#1575;&#1587;&#1605; &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;&#1577; &#1576;&#1593;&#1604;&#1575;&#1605;&#1575;&#1578; &#1575;&#1602;&#1578;&#1576;&#1575;&#1587;&#1548; &#1601;&#1605;&#1579;&#1604;&#1611;&#1575; &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;&#1577; <code>font-size</code> &#1578;&#1615;&#1589;&#1576;&#1581; <code>fontSize</code>.</em></p><h2 id="-">&#1573;&#1583;&#1575;&#1585;&#1577; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578;</h2><p>&#1578;&#1615;&#1608;&#1601;&#1617;&#1585; jQuery &#1608;&#1592;&#1610;&#1601;&#1578;&#1610;&#1606; &#1605;&#1615;&#1607;&#1605;&#1617;&#1578;&#1610;&#1606; &#1604;&#1573;&#1583;&#1575;&#1585;&#1577; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578;:</p><ul><li>&rlm;&lrm;<code>.stop()</code>&lrm;: &#1578;&#1615;&#1608;&#1602;&#1601; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578; &#1575;&#1604;&#1580;&#1575;&#1585;&#1610;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577;.</li><li>&rlm;&lrm;<code>.delay()</code>&lrm;: &#1578;&#1615;&#1572;&#1582;&#1617;&#1616;&#1585; &#1576;&#1583;&#1569; &#1575;&#1604;&#1581;&#1585;&#1603;&#1577; &#1575;&#1604;&#1602;&#1575;&#1583;&#1605;&#1577; &#1576;&#1575;&#1604;&#1605;&#1602;&#1583;&#1575;&#1585; &#1575;&#1604;&#1584;&#1610; &#1610;&#1615;&#1605;&#1585;&#1617;&#1585; &#1573;&#1604;&#1610;&#1607;&#1575; (&#1576;&#1575;&#1604;&#1605;&#1610;&#1604;&#1604;&#1610; &#1579;&#1575;&#1606;&#1610;&#1577;).</li></ul><p>&#1578;&#1615;&#1608;&#1601;&#1617;&#1585; jQuery &#1571;&#1610;&#1590;&#1611;&#1575; &#1608;&#1592;&#1575;&#1574;&#1601; &#1604;&#1573;&#1583;&#1575;&#1585;&#1577; &#1578;&#1593;&#1575;&#1602;&#1576; &#1575;&#1604;&#1581;&#1585;&#1603;&#1575;&#1578; &#1608;&#1578;&#1606;&#1592;&#1610;&#1605;&#1607;&#1575; &#1601;&#1610; "&#1591;&#1608;&#1575;&#1576;&#1610;&#1585;"&#1548; &#1608;&#1573;&#1606;&#1588;&#1575;&#1569; &#1591;&#1608;&#1575;&#1576;&#1610;&#1585; &#1605;&#1615;&#1582;&#1589;&#1617;&#1577;&#1548; &#1608;&#1573;&#1590;&#1575;&#1601;&#1577; &#1583;&#1608;&#1575;&#1604;&#1617; &#1605;&#1615;&#1582;&#1589;&#1617;&#1589;&#1577; &#1573;&#1604;&#1609; &#1607;&#1584;&#1607; &#1575;&#1604;&#1591;&#1617;&#1608;&#1575;&#1576;&#1610;&#1585;. &#1605;&#1606;&#1575;&#1602;&#1588;&#1577; &#1607;&#1584;&#1607; &#1575;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; &#1605;&#1608;&#1590;&#1608;&#1593; &#1571;&#1603;&#1576;&#1585; &#1605;&#1606; &#1607;&#1584;&#1607; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577;&#1548; &#1608;&#1604;&#1603;&#1606; &#1602;&#1583; &#1578;&#1585;&#1594;&#1576; &#1576;&#1575;&#1604;&#1575;&#1591;&#1617;&#1604;&#1575;&#1593; &#1593;&#1604;&#1610;&#1607;&#1575; &#1601;&#1610; <a rel="external nofollow" href="http://api.jquery.com/category/effects/">&#1608;&#1579;&#1575;&#1574;&#1602; jQuery</a>.</p><p><span style="line-height: 22.3999996185303px;">&#1578;&#1585;&#1580;&#1605;&#1577; (&#1576;&#1588;&#1610;&#1569; &#1605;&#1606; &#1575;&#1604;&#1578;&#1589;&#1585;&#1601;)&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1582;&#1575;&#1605;&#1587; &#1605;&#1606; &#1587;&#1604;&#1587;&#1604;&#1577; &nbsp;</span><a rel="external nofollow" href="http://jqfundamentals.com/">jQuery Fundamentals</a>&nbsp;<span style="line-height: 22.3999996185303px;">&#1604;&#1605;&#1572;&#1604;&#1617;&#1601;&#1578;&#1607;&#1575; Rebecca Murphey.</span></p>
]]></description><guid isPermaLink="false">63</guid><pubDate>Sun, 19 Apr 2015 12:31:15 +0000</pubDate></item><item><title>&#x623;&#x62D;&#x62F;&#x627;&#x62B; jQuery &#x648;&#x643;&#x64A;&#x641;&#x64A;&#x651;&#x629; &#x62A;&#x641;&#x648;&#x64A;&#x636;&#x647;&#x627;</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A3%D8%AD%D8%AF%D8%A7%D8%AB-jquery-%D9%88%D9%83%D9%8A%D9%81%D9%8A%D9%91%D8%A9-%D8%AA%D9%81%D9%88%D9%8A%D8%B6%D9%87%D8%A7-r62/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_04/jQuery-Events_480x300.png.67c3ce98f56eb2eecb7e4d72dc14c500.png" /></p>
<p>&#1578;&#1615;&#1587;&#1607;&#1617;&#1604; jQuery &#1575;&#1604;&#1575;&#1587;&#1578;&#1580;&#1575;&#1576;&#1577; &#1604;&#1578;&#1601;&#1575;&#1593;&#1604; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1605;&#1593; &#1589;&#1601;&#1581;&#1575;&#1578; &#1575;&#1604;&#1608;&#1610;&#1576;. &#1605;&#1593;&#1606;&#1609; &#1607;&#1584;&#1575; &#1571;&#1606;&#1617; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1578;&#1606;&#1601;&#1610;&#1584; &#1571;&#1605;&#1585;&#1613; &#1605;&#1575; &#1593;&#1606;&#1583;&#1605;&#1575; &#1610;&#1606;&#1602;&#1585; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1593;&#1604;&#1609; &#1580;&#1586;&#1569;&#1613; &#1605;&#1615;&#1593;&#1610;&#1617;&#1606; &#1605;&#1606; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&#1548; &#1571;&#1608; &#1593;&#1606;&#1583;&#1605;&#1575; &#1610;&#1615;&#1581;&#1585;&#1617;&#1603; &#1605;&#1572;&#1588;&#1617;&#1585; &#1575;&#1604;&#1601;&#1571;&#1585;&#1577; &#1601;&#1608;&#1602; &#1593;&#1606;&#1589;&#1585; &#1601;&#1610; &#1606;&#1605;&#1608;&#1584;&#1580; &#1605;&#1579;&#1604;&#1575;&#1611;. &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610;&#1548; &#1604;&#1583;&#1610;&#1606;&#1575; &#1571;&#1605;&#1585; &#1610;&#1615;&#1606;&#1601;&#1617;&#1614;&#1584; &#1593;&#1606;&#1583;&#1605;&#1575; &#1610;&#1606;&#1602;&#1585; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1601;&#1608;&#1602; &#1571;&#1610;&#1617; &#1593;&#1606;&#1589;&#1585; &#1602;&#1575;&#1574;&#1605;&#1577; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'li' ).click(function( event ) {
  console.log( 'clicked', $( this ).text() );
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/30/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a>&nbsp;<span style="line-height: 22.3999996185303px;">&nbsp;(&#1578;&#1571;&#1603;&#1583; &#1605;&#1606; &#1590;&#1594;&#1591; &#1575;&#1604;&#1586;&#1585;&#1617; Run with JS &#1601;&#1610; &#1607;&#1584; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1608;&#1603;&#1604;&#1617; &#1575;&#1604;&#1571;&#1605;&#1579;&#1604;&#1577; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610;&#1577;)</span></p><p>&#1610;&#1615;&#1581;&#1583;&#1617;&#1583; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602; &#1603;&#1604;&#1617; &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1602;&#1575;&#1574;&#1605;&#1577; &#1608;&#1610;&#1615;&#1587;&#1606;&#1583; &#1573;&#1604;&#1610;&#1607;&#1575; &#1583;&#1575;&#1604;&#1617;&#1577; &#1578;&#1578;&#1608;&#1604;&#1617;&#1609; &#1581;&#1583;&#1579; &#1575;&#1604;&#1606;&#1617;&#1602;&#1585; &#1593;&#1604;&#1609; &#1603;&#1604;&#1617; &#1593;&#1606;&#1589;&#1585;&#1548; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.click()</code>&lrm; &#1601;&#1610; jQuery.</p><p>&#1578;&#1608;&#1601;&#1617;&#1585; jQuery &#1608;&#1592;&#1575;&#1574;&#1601; &#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577;&#1611; &#1593;&#1583;&#1610;&#1583;&#1577;&#1611; &#1604;&#1585;&#1576;&#1591; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579;&#1548; &#1608;&#1603;&#1604;&#1617; &#1605;&#1606; &#1607;&#1584;&#1607; &#1575;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; &#1610;&#1608;&#1575;&#1601;&#1602; &#1581;&#1583;&#1579; DOM &#1571;&#1589;&#1604;&#1610;&#1617;&#1611;&#1575;:</p><style type="text/css">td {direction:ltr; }</style><table><thead><tr><th>&#1575;&#1587;&#1605; &#1575;&#1604;&#1581;&#1583;&#1579; &#1575;&#1604;&#1571;&#1589;&#1604;&#1610;&#1617; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</th><th style="text-align: left;">&#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &#1575;&#1604;&#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577;</th></tr></thead><tbody><tr><td style="text-align: right;">&rlm;click&lrm;</td><td><span style="font-family:courier new,courier,monospace;">.click()</span></td></tr><tr><td style="text-align: right;">&rlm;keydown</td><td><span style="font-family:courier new,courier,monospace;">.keydown()</span></td></tr><tr><td style="text-align: right;">&rlm;keypress</td><td><span style="font-family:courier new,courier,monospace;">.keypress()</span></td></tr><tr><td style="text-align: right;">&rlm;keyup</td><td><span style="font-family:courier new,courier,monospace;">.keyup()</span></td></tr><tr><td style="text-align: right;">&rlm;mouseover</td><td><span style="font-family:courier new,courier,monospace;">.mouseover()</span></td></tr><tr><td style="text-align: right;">&rlm;mouseout</td><td><span style="font-family:courier new,courier,monospace;">.mouseout()</span></td></tr><tr><td style="text-align: right;">&rlm;mouseenter</td><td><span style="font-family:courier new,courier,monospace;">.mouseenter()</span></td></tr><tr><td style="text-align: right;">&rlm;mouseleave</td><td><span style="font-family:courier new,courier,monospace;">.mouseleave()</span></td></tr><tr><td style="text-align: right;">&rlm;scroll</td><td><span style="font-family:courier new,courier,monospace;">.scroll()</span></td></tr><tr><td style="text-align: right;">&rlm;focus</td><td><span style="font-family:courier new,courier,monospace;">.focus()</span></td></tr><tr><td style="text-align: right;">&rlm;blur</td><td><span style="font-family:courier new,courier,monospace;">.blur()</span></td></tr><tr><td style="text-align: right;">&rlm;resize</td><td><span style="font-family:courier new,courier,monospace;">.resize()</span></td></tr></tbody></table><p>&#1578;&#1587;&#1578;&#1582;&#1583;&#1605; &#1607;&#1584;&#1607; &#1575;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.on()</code>&lrm; &#1605;&#1575; &#1608;&#1585;&#1575;&#1569; &#1575;&#1604;&#1603;&#1608;&#1575;&#1604;&#1610;&#1587;&#1548; &#1608;&#1607;&#1610; &#1608;&#1592;&#1610;&#1601;&#1577; &#1610;&#1605;&#1603;&#1606;&#1603; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605;&#1607;&#1575; &#1576;&#1606;&#1601;&#1587;&#1603; &#1604;&#1605;&#1585;&#1608;&#1606;&#1577;&#1613; &#1571;&#1603;&#1576;&#1585;. &#1608;&#1593;&#1606;&#1583; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605;&#1603; &#1604;&#1607;&#1575;&#1548; &#1601;&#1573;&#1606;&#1617;&#1603; &#1578;&#1615;&#1605;&#1585;&#1617;&#1585; &#1575;&#1587;&#1605; &#1575;&#1604;&#1581;&#1583;&#1579; &#1575;&#1604;&#1571;&#1589;&#1604;&#1610;&#1617; &#1603;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604; &#1571;&#1608;&#1617;&#1604; &#1604;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577;&#1548; &#1579;&#1605;&#1617; &#1583;&#1575;&#1604;&#1617;&#1577; &#1578;&#1578;&#1608;&#1604;&#1609; &#1575;&#1604;&#1581;&#1583;&#1579; &#1603;&#1605;&#1593;&#1575;&#1605;&#1604; &#1579;&#1575;&#1606;&#1613;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'li' ).on( 'click', function( event ) {
  console.log( 'clicked', $( this ).text() );
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/31/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p>&#1605;&#1575; &#1573;&#1606; "&#1578;&#1585;&#1576;&#1591;" &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610; &#1575;&#1604;&#1581;&#1583;&#1579; &#1576;&#1593;&#1606;&#1589;&#1585;&#1613; &#1605;&#1606; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585;&#1548; &#1601;&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1573;&#1579;&#1575;&#1585;&#1577; &#1607;&#1584;&#1575; &#1575;&#1604;&#1581;&#1583;&#1579; &#1576;&#1600;jQuery &#1571;&#1610;&#1590;&#1611;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'li' ).trigger( 'click' );</pre><p>&#1608;&#1573;&#1606; &#1603;&#1575;&#1606; &#1604;&#1604;&#1581;&#1583;&#1579; &#1575;&#1604;&#1617;&#1584;&#1610; &#1578;&#1615;&#1585;&#1610;&#1583; &#1573;&#1579;&#1575;&#1585;&#1578;&#1607; &#1608;&#1592;&#1610;&#1601;&#1577;&#1612; &#1605;&#1582;&#1578;&#1589;&#1585;&#1577; (&#1603;&#1605;&#1575; &#1608;&#1585;&#1583; &#1601;&#1610; &#1575;&#1604;&#1580;&#1583;&#1608;&#1604; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602;)&#1548; &#1601;&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1573;&#1579;&#1575;&#1585;&#1577; &#1575;&#1604;&#1581;&#1583;&#1579; &#1576;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &#1575;&#1604;&#1605;&#1582;&#1578;&#1589;&#1585;&#1577; &#1584;&#1575;&#1578;&#1607;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'li' ).click();</pre><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1615;&#1579;&#1610;&#1585; &#1581;&#1583;&#1579;&#1611;&#1575; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &lrm;<code>.trigger()</code>&lrm;&#1548; &#1601;&#1573;&#1606;&#1617;&#1603; &#1578;&#1587;&#1578;&#1583;&#1593;&#1610; &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1575;&#1578; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1575;&#1604;&#1617;&#1578;&#1610; &#1571;&#1615;&#1606;&#1588;&#1574;&#1578; &#1601;&#1610; JavaScript &#1601;&#1602;&#1591; &#1608;&#1604;&#1575; &#1578;&#1587;&#1578;&#1583;&#1593;&#1610; &#1575;&#1604;&#1587;&#1617;&#1604;&#1608;&#1603; &#1575;&#1604;&#1575;&#1601;&#1578;&#1585;&#1575;&#1590;&#1610;&#1617; &#1604;&#1604;&#1581;&#1583;&#1579;. &#1601;&#1605;&#1579;&#1604;&#1611;&#1575; &#1573;&#1606; &#1571;&#1579;&#1585;&#1578; &#1581;&#1583;&#1579; &#1575;&#1604;&#1606;&#1617;&#1602;&#1585; &#1593;&#1604;&#1609; &#1585;&#1575;&#1576;&#1591; (&#1593;&#1606;&#1589;&#1585; <code>&lt;a&gt;</code>) &#1601;&#1604;&#1606; &#1610;&#1606;&#1578;&#1602;&#1604; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581; &#1573;&#1604;&#1609; &#1575;&#1604;&#1585;&#1617;&#1575;&#1576;&#1591; &#1575;&#1604;&#1605;&#1615;&#1587;&#1606;&#1583; &#1573;&#1604;&#1610;&#1607; &#1601;&#1610; &#1589;&#1601;&#1577; <code>href</code> (&#1605;&#1593; &#1571;&#1606;&#1617; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1603;&#1578;&#1575;&#1576;&#1577; &#1571;&#1608;&#1575;&#1605;&#1585; &#1578;&#1615;&#1606;&#1601;&#1617;&#1584; &#1607;&#1584;&#1607; &#1575;&#1604;&#1594;&#1575;&#1610;&#1577;).</em></p><p>&#1576;&#1593;&#1583; &#1571;&#1606; &#1578;&#1585;&#1576;&#1591; &#1581;&#1583;&#1579;&#1611;&#1575; &#1576;&#1615;&#1593;&#1606;&#1589;&#1585;&#1548; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1601;&#1603;&#1617; &#1607;&#1584;&#1575; &#1575;&#1604;&#1575;&#1585;&#1578;&#1576;&#1575;&#1591; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.off()</code>&lrm; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1586;&#1610;&#1604; &#1571;&#1610;&#1577; &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1575;&#1578; &#1575;&#1585;&#1578;&#1576;&#1591;&#1578; &#1576;&#1607;&#1584;&#1575; &#1575;&#1604;&#1581;&#1583;&#1579;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'li' ).off( 'click' );</pre><h2 id="-">&#1581;&#1589;&#1585; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1590;&#1605;&#1606; &#1601;&#1590;&#1575;&#1569; &#1571;&#1587;&#1605;&#1575;&#1569;</h2><p>&#1605;&#1606; &#1575;&#1604;&#1605;&#1586;&#1575;&#1610;&#1575; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1578;&#1610;&#1581;&#1607;&#1575; &lrm;<code>.on()</code>&lrm; &#1573;&#1605;&#1603;&#1575;&#1606;&#1610;&#1617;&#1577; &#1581;&#1589;&#1585; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1590;&#1605;&#1606; "&#1601;&#1590;&#1575;&#1569; &#1571;&#1587;&#1605;&#1575;&#1569;". &#1602;&#1583; &#1578;&#1578;&#1587;&#1575;&#1569;&#1604; &#1593;&#1606; &#1575;&#1604;&#1581;&#1575;&#1580;&#1577; &#1604;&#1584;&#1604;&#1603;. &#1575;&#1601;&#1578;&#1585;&#1590; &#1605;&#1579;&#1604;&#1611;&#1575; &#1571;&#1606;&#1617;&#1603; &#1578;&#1585;&#1610;&#1583; &#1585;&#1576;&#1591; &#1576;&#1593;&#1590; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1576;&#1593;&#1606;&#1589;&#1585; &#1605;&#1575;&#1548; &#1579;&#1605;&#1617; &#1573;&#1586;&#1575;&#1604;&#1577; &#1576;&#1593;&#1590; &#1575;&#1604;&#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1575;&#1578;&#1548; &#1610;&#1605;&#1603;&#1606;&#1603; &#1571;&#1606; &#1578;&#1601;&#1593;&#1604; &#1605;&#1575; &#1601;&#1593;&#1604;&#1606;&#1575;&#1607; &#1601;&#1610; &#1575;&#1604;&#1601;&#1602;&#1585;&#1577; &#1575;&#1604;&#1605;&#1575;&#1590;&#1610;&#1577;:</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1571;&#1587;&#1604;&#1608;&#1576; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1594;&#1610;&#1585; &#1605;&#1615;&#1601;&#1590;&#1617;&#1604;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'li' ).on( 'click', function() {
  console.log( 'a list item was clicked' );
});

$( 'li' ).on( 'click', function() {
  registerClick();
  doSomethingElse();
});

$( 'li' ).off( 'click' );</pre><p>&#1573;&#1604;&#1617;&#1575; &#1571;&#1606;&#1617; &#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1587;&#1610;&#1615;&#1586;&#1610;&#1604; <em>&#1603;&#1604;&#1617;</em> &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1575;&#1578; &#1575;&#1604;&#1606;&#1602;&#1585; &#1593;&#1604;&#1609; &#1603;&#1604;&#1617; &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1602;&#1608;&#1575;&#1574;&#1605;&#1548; &#1608;&#1604;&#1610;&#1587; &#1607;&#1584;&#1575; &#1605;&#1575; &#1606;&#1585;&#1610;&#1583;. &#1573;&#1584;&#1575; &#1585;&#1576;&#1591;&#1578; &#1605;&#1578;&#1608;&#1604;&#1617;&#1610;&#1611;&#1575; &#1604;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1605;&#1581;&#1589;&#1608;&#1585;&#1611;&#1575; &#1590;&#1605;&#1606; &#1601;&#1590;&#1575;&#1569; &#1571;&#1587;&#1605;&#1575;&#1569;&#1548; &#1601;&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1575;&#1587;&#1578;&#1607;&#1583;&#1575;&#1601;&#1607; &#1576;&#1583;&#1602;&#1617;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'li' ).on( 'click.logging', function() {
  console.log( 'a list item was clicked' );
});

$( 'li' ).on( 'click.analytics', function() {
  registerClick();
  doSomethingElse();
});

$( 'li' ).off( 'click.logging' );</pre><p>&#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1604;&#1575; &#1610;&#1572;&#1579;&#1617;&#1585; &#1593;&#1604;&#1609; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1575;&#1604;&#1605;&#1585;&#1578;&#1576;&#1591;&#1577; &#1576;&#1575;&#1604;&#1606;&#1617;&#1602;&#1585; &#1608;&#1575;&#1604;&#1605;&#1615;&#1578;&#1593;&#1604;&#1617;&#1602;&#1577; &#1576;&#1571;&#1594;&#1585;&#1575;&#1590; &#1573;&#1581;&#1589;&#1575;&#1569;&#1575;&#1578; &#1575;&#1604;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&#1548; &#1576;&#1610;&#1606;&#1605;&#1575; &#1610;&#1586;&#1610;&#1604; &#1571;&#1581;&#1583;&#1575;&#1579; &#1575;&#1604;&#1606;&#1617;&#1602;&#1585; &#1575;&#1604;&#1605;&#1615;&#1578;&#1593;&#1604;&#1617;&#1602;&#1577; &#1576;&#1575;&#1604;&#1587;&#1617;&#1580;&#1604;&#1617;&#1575;&#1578;.</p><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1605;&#1610;&#1586;&#1577; &#1581;&#1589;&#1585; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1604;&#1573;&#1579;&#1575;&#1585;&#1577; &#1571;&#1581;&#1583;&#1575;&#1579;&#1613; &#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'li' ).trigger( 'click.logging' );</pre><h2 id="-">&#1585;&#1576;&#1591; &#1571;&#1581;&#1583;&#1575;&#1579; &#1605;&#1615;&#1578;&#1593;&#1583;&#1617;&#1583;&#1577; &#1601;&#1610; &#1608;&#1602;&#1578; &#1608;&#1575;&#1581;&#1583;</h2><p>&#1605;&#1610;&#1586;&#1577; &#1571;&#1582;&#1585;&#1609; &#1578;&#1615;&#1608;&#1601;&#1617;&#1585;&#1607;&#1575; &lrm;<code>.on()</code>&lrm;&#1548; &#1608;&#1607;&#1610; &#1573;&#1605;&#1603;&#1575;&#1606;&#1610;&#1617;&#1577; &#1585;&#1576;&#1591; &#1571;&#1581;&#1583;&#1575;&#1579; &#1605;&#1615;&#1578;&#1593;&#1583;&#1617;&#1583;&#1577; &#1601;&#1610; &#1608;&#1602;&#1578;&#1613; &#1608;&#1575;&#1581;&#1583;. &#1575;&#1601;&#1578;&#1585;&#1590; &#1605;&#1579;&#1604;&#1611;&#1575; &#1571;&#1606;&#1617;&#1603; &#1578;&#1585;&#1610;&#1583; &#1578;&#1606;&#1601;&#1610;&#1584; &#1571;&#1605;&#1585;&#1613; &#1605;&#1615;&#1593;&#1610;&#1617;&#1606; &#1593;&#1606;&#1583;&#1605;&#1575; &#1610;&#1615;&#1605;&#1585;&#1617;&#1585; &#1575;&#1604;&#1605;&#1587;&#1578;&#1582;&#1583;&#1605; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1571;&#1608; &#1610;&#1594;&#1610;&#1617;&#1585; &#1602;&#1610;&#1575;&#1587; &#1575;&#1604;&#1606;&#1617;&#1575;&#1601;&#1584;&#1577;. &#1601;&#1607;&#1584;&#1607; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &#1578;&#1615;&#1578;&#1610;&#1581; &#1604;&#1603; &#1578;&#1605;&#1585;&#1610;&#1585; &#1575;&#1604;&#1581;&#1583;&#1579;&#1610;&#1606; &#1605;&#1593;&#1611;&#1575; &#1605;&#1601;&#1589;&#1608;&#1604;&#1610;&#1606; &#1576;&#1605;&#1587;&#1575;&#1601;&#1577; &#1601;&#1610; &#1587;&#1604;&#1587;&#1604;&#1577; &#1606;&#1589;&#1610;&#1617;&#1577;&#1548; &#1610;&#1578;&#1576;&#1593;&#1607;&#1605;&#1575; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1585;&#1610;&#1583; &#1571;&#1606; &#1578;&#1578;&#1608;&#1604;&#1617;&#1609; &#1575;&#1604;&#1581;&#1583;&#1579;&#1610;&#1606;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'input[type="text"]' ).on('focus blur', function() {
  console.log( 'The user focused or blurred the input' );
});

$( window ).on( 'resize.foo scroll.bar', function() {
  console.log( 'The window has been resized or scrolled!' );
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/32/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><h2 id="-">&#1578;&#1605;&#1585;&#1610;&#1585; &#1583;&#1608;&#1575;&#1604;&#1617; &#1605;&#1615;&#1587;&#1605;&#1617;&#1575;&#1577; &#1603;&#1615;&#1605;&#1578;&#1608;&#1604;&#1617;&#1610;&#1575;&#1578; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579;</h2><p>&#1601;&#1610; &#1603;&#1604;&#1617; &#1571;&#1605;&#1579;&#1604;&#1578;&#1606;&#1575; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602;&#1577;&#1548; &#1603;&#1606;&#1617;&#1575; &#1606;&#1615;&#1605;&#1585;&#1617;&#1585; &#1583;&#1608;&#1575;&#1604;&#1617; &#1605;&#1580;&#1607;&#1608;&#1604;&#1577; &#1603;&#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1575;&#1578; &#1604;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579;&#1548; &#1608;&#1604;&#1603;&#1606; &#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1573;&#1606;&#1588;&#1575;&#1569; &#1583;&#1575;&#1604;&#1617;&#1577; &#1602;&#1576;&#1604; &#1573;&#1605;&#1585;&#1575;&#1585;&#1607;&#1575; &#1608;&#1581;&#1601;&#1592;&#1607;&#1575; &#1601;&#1610; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; &#1579;&#1605;&#1617; &#1578;&#1605;&#1585;&#1610;&#1585; &#1607;&#1584;&#1575; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; &#1603;&#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610; &#1575;&#1604;&#1581;&#1583;&#1579;. &#1607;&#1584;&#1575; &#1610;&#1615;&#1601;&#1610;&#1583; &#1601;&#1610; &#1581;&#1575;&#1604; &#1571;&#1585;&#1583;&#1578; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1606;&#1601;&#1587;&#1607;&#1575; &#1604;&#1578;&#1578;&#1608;&#1604;&#1617;&#1609; &#1571;&#1581;&#1583;&#1575;&#1579;&#1611;&#1575; &#1605;&#1615;&#1582;&#1578;&#1604;&#1601;&#1577; &#1571;&#1608; &#1571;&#1581;&#1583;&#1575;&#1579;&#1611;&#1575; &#1605;&#1606; &#1593;&#1606;&#1575;&#1589;&#1585; &#1605;&#1615;&#1582;&#1578;&#1604;&#1601;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var handleClick = function() {
  console.log( 'something was clicked' );
};

$( 'li' ).on( 'click', handleClick );
$( 'h1' ).on( 'click', handleClick );</pre><h2 id="-">&#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1581;&#1583;&#1579;</h2><p>&#1601;&#1610; &#1603;&#1604;&#1617; &#1605;&#1585;&#1617;&#1577; &#1610;&#1615;&#1579;&#1575;&#1585; &#1601;&#1610;&#1607;&#1575; &#1581;&#1583;&#1579;&#1612; &#1605;&#1575;&#1548; &#1578;&#1587;&#1578;&#1602;&#1576;&#1604; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1577; &#1604;&#1604;&#1581;&#1583;&#1579; &#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1611;&#1575; &#1608;&#1575;&#1581;&#1583;&#1611;&#1575;&#1548; &#1608;&#1607;&#1608; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1581;&#1583;&#1579; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1578;&#1576;&#1593; &#1605;&#1593;&#1575;&#1610;&#1610;&#1585; &#1605;&#1615;&#1578;&#1617;&#1601;&#1602;&#1611;&#1575; &#1593;&#1604;&#1610;&#1607;&#1575; &#1576;&#1610;&#1606; &#1603;&#1604;&#1617; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578;. &#1608;&#1604;&#1607;&#1584;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; <a rel="external nofollow" href="http://api.jquery.com/category/events/event-object/">&#1582;&#1589;&#1575;&#1574;&#1589; &#1605;&#1615;&#1601;&#1610;&#1583;&#1577; &#1603;&#1579;&#1610;&#1585;&#1577;</a>&#1548; &#1605;&#1606;&#1607;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( document ).on( 'click', function( event ) {
  console.log( event.type );    // &#1606;&#1608;&#1593; &#1575;&#1604;&#1581;&#1583;&#1579;&#1548; &#1605;&#1579;&#1604;: "click"
  console.log( event.which );   // &#1575;&#1604;&#1586;&#1585;&#1617; &#1571;&#1608; &#1575;&#1604;&#1605;&#1601;&#1578;&#1575;&#1581; &#1575;&#1604;&#1617;&#1584;&#1610; &#1590;&#1594;&#1591;
  console.log( event.target );  // &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1617;&#1584;&#1610; &#1575;&#1606;&#1591;&#1604;&#1602; &#1605;&#1606;&#1607; &#1575;&#1604;&#1581;&#1583;&#1579;
  console.log( event.pageX );   // &#1605;&#1608;&#1602;&#1593; &#1605;&#1572;&#1588;&#1617;&#1585; &#1575;&#1604;&#1601;&#1571;&#1585;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1605;&#1581;&#1608;&#1585; X
  console.log( event.pageY );   // &#1605;&#1608;&#1602;&#1593; &#1605;&#1572;&#1588;&#1617;&#1585; &#1575;&#1604;&#1601;&#1571;&#1585;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1605;&#1581;&#1608;&#1585; Y
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/33/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><h2 id="-">&#1583;&#1575;&#1582;&#1604; &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579;</h2><p>&#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1615;&#1581;&#1583;&#1617;&#1616;&#1583; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1575;&#1604;&#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1577; &#1604;&#1581;&#1583;&#1579; &#1605;&#1575;&#1548; &#1601;&#1573;&#1606;&#1617;&#1607; &#1610;&#1615;&#1578;&#1575;&#1581; &#1604;&#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1593;&#1606;&#1589;&#1585; DOM &#1575;&#1604;&#1582;&#1575;&#1605; &#1575;&#1604;&#1617;&#1584;&#1610; &#1571;&#1591;&#1604;&#1602; &#1575;&#1604;&#1581;&#1583;&#1579; &#1603;&#1587;&#1610;&#1575;&#1602; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; <code>this</code>&#1548; &#1601;&#1573;&#1606; &#1571;&#1585;&#1583;&#1578; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; jQuery &#1604;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1581;&#1583;&#1579;&#1548; &#1601;&#1571;&#1581;&#1591;&#1607; &#1576;&#1600;&lrm;<code>$()</code>&lrm;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'input' ).on( 'keydown', function( event ) {
  // this: &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1582;&#1575;&#1605; &#1575;&#1604;&#1617;&#1584;&#1610; &#1571;&#1591;&#1604;&#1602; &#1575;&#1604;&#1581;&#1583;&#1579;
  // event: &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1581;&#1583;&#1579;

  // &#1594;&#1610;&#1585; &#1604;&#1608;&#1606; &#1575;&#1604;&#1582;&#1604;&#1601;&#1610;&#1577; &#1573;&#1604;&#1609; &#1571;&#1581;&#1605;&#1585; &#1573;&#1584;&#1575; &#1590;&#1594;&#1591; &#1586;&#1585; &#1605;&#1587;&#1581; &#1575;&#1604;&#1581;&#1585;&#1601;&#1548; &#1571;&#1608; &#1573;&#1604;&#1609; &#1571;&#1582;&#1590;&#1585; &#1601;&#1610;&#1605;&#1575; &#1587;&#1608;&#1609; &#1584;&#1604;&#1603;
  $( this ).css( 'background', event.which === 8 ? 'red' : 'green' );
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/pebico/2/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><h2 id="-">&#1605;&#1606;&#1593; &#1575;&#1604;&#1587;&#1617;&#1604;&#1608;&#1603; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617;</h2><p>&#1602;&#1583; &#1578;&#1585;&#1594;&#1576; &#1571;&#1581;&#1610;&#1575;&#1606;&#1611;&#1575; &#1601;&#1610; &#1605;&#1606;&#1593; &#1575;&#1604;&#1587;&#1617;&#1604;&#1608;&#1603; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617; &#1604;&#1581;&#1583;&#1579;&#1613; &#1605;&#1575;&#1548; &#1603;&#1571;&#1606; &#1578;&#1585;&#1594;&#1576; &#1601;&#1610; &#1578;&#1608;&#1604;&#1617;&#1610; &#1575;&#1604;&#1606;&#1617;&#1602;&#1585; &#1601;&#1608;&#1602; &#1585;&#1575;&#1576;&#1591; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; AJAX&#1548; &#1576;&#1583;&#1604;&#1611;&#1575; &#1605;&#1606; &#1576;&#1583;&#1569; &#1573;&#1593;&#1575;&#1583;&#1577; &#1578;&#1581;&#1605;&#1610;&#1604; &#1603;&#1575;&#1605;&#1604;&#1577;&#1613; &#1604;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; (&#1608;&#1607;&#1608; &#1575;&#1604;&#1587;&#1617;&#1604;&#1608;&#1603; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617;). &#1610;&#1589;&#1604; &#1575;&#1604;&#1593;&#1583;&#1610;&#1583; &#1605;&#1606; &#1575;&#1604;&#1605;&#1615;&#1591;&#1608;&#1617;&#1585;&#1610;&#1606; &#1573;&#1604;&#1609; &#1607;&#1584;&#1607; &#1575;&#1604;&#1594;&#1575;&#1610;&#1577; &#1576;&#1573;&#1593;&#1575;&#1583;&#1577; <code>false</code> &#1605;&#1606; &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610; &#1575;&#1604;&#1581;&#1583;&#1579;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617; &#1604;&#1607;&#1584;&#1575; &#1578;&#1571;&#1579;&#1610;&#1585;&#1611;&#1575; &#1580;&#1575;&#1606;&#1576;&#1610;&#1617;&#1611;&#1575; &#1570;&#1582;&#1585;: &#1601;&#1607;&#1608; &#1610;&#1605;&#1606;&#1593; <em>&#1578;&#1601;&#1588;&#1617;&#1610;</em> &#1575;&#1604;&#1581;&#1583;&#1579; (propagation) &#1571;&#1610;&#1590;&#1611;&#1575; (&#1587;&#1606;&#1588;&#1585;&#1581;&#1607; &#1576;&#1593;&#1583; &#1602;&#1604;&#1610;&#1604;)&#1548; &#1605;&#1605;&#1617;&#1575; &#1602;&#1583; &#1610;&#1593;&#1591;&#1610; &#1606;&#1578;&#1575;&#1574;&#1580; &#1594;&#1610;&#1585; &#1605;&#1585;&#1594;&#1608;&#1576;&#1577;. &#1575;&#1604;&#1591;&#1617;&#1585;&#1610;&#1602;&#1577; &#1575;&#1604;&#1587;&#1617;&#1604;&#1610;&#1605;&#1577; &#1604;&#1605;&#1606;&#1593; &#1575;&#1604;&#1587;&#1617;&#1604;&#1608;&#1603; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617; &#1604;&#1581;&#1583;&#1579; &#1578;&#1603;&#1608;&#1606; &#1576;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &lrm;<code>.preventDefault()</code>&lrm; &#1593;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1581;&#1583;&#1579;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'input' ).on( 'keydown', function( event ) {
  // this: &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1582;&#1575;&#1605; &#1575;&#1604;&#1617;&#1584;&#1610; &#1571;&#1591;&#1604;&#1602; &#1575;&#1604;&#1581;&#1583;&#1579;
  // event: &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1581;&#1583;&#1579;

  // &#1594;&#1610;&#1585; &#1604;&#1608;&#1606; &#1575;&#1604;&#1582;&#1604;&#1601;&#1610;&#1577; &#1573;&#1604;&#1609; &#1571;&#1581;&#1605;&#1585; &#1573;&#1584;&#1575; &#1590;&#1594;&#1591; &#1586;&#1585; &#1605;&#1587;&#1581; &#1575;&#1604;&#1581;&#1585;&#1601;&#1548; &#1571;&#1608; &#1573;&#1604;&#1609; &#1571;&#1582;&#1590;&#1585; &#1601;&#1610;&#1605;&#1575; &#1587;&#1608;&#1609; &#1584;&#1604;&#1603;
  $( this ).css( 'background', event.which === 8 ? 'red' : 'green' );
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/34/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><h2 id="-event-bubbling-">&#1589;&#1593;&#1608;&#1583; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; (Event bubbling)</h2><p>&#1578;&#1605;&#1593;&#1617;&#1606; &#1575;&#1604;&#1606;&#1617;&#1589; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'a' ).on( 'click', function( event ) {
  // &#1575;&#1605;&#1606;&#1593; &#1575;&#1604;&#1581;&#1583;&#1579; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617;.
  event.preventDefault();
  // &#1587;&#1580;&#1617;&#1604; &#1605;&#1575; &#1581;&#1583;&#1579;.
  console.log( 'I was just clicked!' );
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/35/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p>&#1610;&#1585;&#1576;&#1591; &#1607;&#1584;&#1575; &#1575;&#1604;&#1606;&#1617;&#1589; &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1611;&#1575; &#1604;&#1604;&#1606;&#1602;&#1585; &#1593;&#1604;&#1609; &#1603;&#1604;&#1617; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; (&#1608;&#1607;&#1608; &#1571;&#1605;&#1585; &#1610;&#1580;&#1576; <em>&#1571;&#1604;&#1617;&#1575;</em> &#1578;&#1601;&#1593;&#1604;&#1607; <em>&#1606;&#1607;&#1575;&#1574;&#1610;&#1617;&#1611;&#1575;</em> &#1601;&#1610; &#1575;&#1604;&#1605;&#1608;&#1575;&#1602;&#1593; &#1575;&#1604;&#1581;&#1602;&#1610;&#1602;&#1610;&#1617;&#1577;)&#1548; &#1576;&#1575;&#1604;&#1573;&#1590;&#1575;&#1601;&#1577; &#1573;&#1604;&#1609; &#1593;&#1606;&#1589;&#1585;&#1610; &#1575;&#1604;&#1606;&#1617;&#1575;&#1601;&#1584;&#1577; &#1608;&#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1606;&#1583;. &#1608;&#1604;&#1603;&#1606; &#1605;&#1575; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1581;&#1583;&#1579; &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1606;&#1602;&#1585; &#1593;&#1604;&#1609; &#1593;&#1606;&#1589;&#1585; <code>&lt;a&gt;</code> &#1605;&#1615;&#1583;&#1585;&#1580; &#1583;&#1575;&#1582;&#1604; &#1593;&#1606;&#1575;&#1589;&#1585; &#1571;&#1582;&#1585;&#1609;&#1567; &#1575;&#1604;&#1581;&#1602;&#1610;&#1602;&#1577; &#1571;&#1606;&#1617; &#1575;&#1604;&#1581;&#1583;&#1579; &#1587;&#1610;&#1615;&#1579;&#1575;&#1585; &#1593;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; <code>&lt;a&gt;</code> &#1608;&#1593;&#1604;&#1609; &#1603;&#1604;&#1617; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1581;&#1610;&#1591; &#1576;&#1607; &#1589;&#1593;&#1608;&#1583;&#1611;&#1575; &#1581;&#1578;&#1617;&#1609; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585;&#1610;&#1606; <code>document</code> &#1608;<code>window</code>.</p><p>&#1610;&#1615;&#1587;&#1605;&#1617;&#1609; &#1607;&#1584;&#1575; &#1575;&#1604;&#1587;&#1617;&#1604;&#1608;&#1603; "&#1589;&#1593;&#1608;&#1583; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579;"&#1548; &#1601;&#1575;&#1604;&#1581;&#1583;&#1579; &#1610;&#1615;&#1579;&#1575;&#1585; &#1593;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1617;&#1584;&#1610; &#1606;&#1602;&#1585; &#1593;&#1604;&#1610;&#1607; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605;&#1548; &#1579;&#1605;&#1617; &#1610;&#1606;&#1578;&#1602;&#1604; &#1589;&#1575;&#1593;&#1583;&#1611;&#1575; &#1573;&#1604;&#1609; &#1603;&#1604;&#1617; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1581;&#1608;&#1610;&#1607; &#1608;&#1589;&#1608;&#1604;&#1611;&#1575; &#1573;&#1604;&#1609; &#1571;&#1593;&#1604;&#1609; DOM&#1548; &#1573;&#1604;&#1617;&#1575; &#1573;&#1606; &#1575;&#1587;&#1578;&#1583;&#1593;&#1610;&#1578; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.stopPropagation()</code>&lrm; &#1593;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1581;&#1583;&#1579;.</p><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1601;&#1607;&#1605; &#1584;&#1604;&#1603; &#1576;&#1587;&#1607;&#1608;&#1604;&#1577; &#1571;&#1603;&#1576;&#1585; &#1601;&#1610; &#1607;&#1584;&#1575; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604;:</p><pre data-pbcklang="html" data-pbcktabsize="" class="html ipsCode prettyprint" style="line-height: 22.3999996185303px;">&lt;a href="#foo"&gt;&lt;span&gt;I am a Link!&lt;/span&gt;&lt;/a&gt;
&lt;a href="#bar"&gt;&lt;b&gt;&lt;i&gt;I am another Link!&lt;/i&gt;&lt;/b&gt;&lt;/a&gt;</pre><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'a' ).on( 'click', function( event ) {
  event.preventDefault();
  console.log( $( this ).attr( 'href' ) );
});</pre><p>&#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1606;&#1602;&#1585; &#1593;&#1604;&#1609; "I am a Link!&lrm;"&#1548; &#1601;&#1573;&#1606;&#1603; &#1604;&#1575; &#1578;&#1606;&#1602;&#1585; &#1601;&#1593;&#1604;&#1610;&#1617;&#1611;&#1575; &#1593;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; <code>&lt;a&gt;</code>&#1548; &#1576;&#1604; &#1593;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; <code>&lt;span&gt;</code> &#1583;&#1575;&#1582;&#1604;&#1607;&#1548; &#1608;&#1604;&#1603;&#1606; &#1575;&#1604;&#1581;&#1583;&#1579; "&#1610;&#1589;&#1593;&#1583;" &#1606;&#1581;&#1608; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; <code>&lt;a&gt;</code> &#1608;&#1610;&#1615;&#1579;&#1610;&#1585; &#1581;&#1583;&#1579; &#1575;&#1604;&#1606;&#1617;&#1602;&#1585; &#1575;&#1604;&#1605;&#1615;&#1585;&#1578;&#1576;&#1591; &#1576;&#1607;.</p><h2 id="-event-delegation-">&#1578;&#1601;&#1608;&#1610;&#1590; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; (Event delegation)</h2><p>&#1610;&#1587;&#1605;&#1581; &#1604;&#1606;&#1575; &#1605;&#1601;&#1607;&#1608;&#1605; "&#1589;&#1593;&#1608;&#1583; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579;" &#1576;&#1573;&#1606;&#1580;&#1575;&#1586; &#1601;&#1603;&#1585;&#1577; "&#1578;&#1601;&#1608;&#1610;&#1590; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579;"&#1548; &#1571;&#1610; &#1585;&#1576;&#1591; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1576;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1605;&#1587;&#1578;&#1608;&#1609; &#1571;&#1593;&#1604;&#1609;&#1548; &#1579;&#1605;&#1617; &#1575;&#1603;&#1578;&#1588;&#1575;&#1601; &#1571;&#1610;&#1617; &#1593;&#1606;&#1589;&#1585; &#1601;&#1585;&#1593;&#1610;&#1617; &#1590;&#1605;&#1606;&#1607;&#1575; &#1571;&#1579;&#1575;&#1585; &#1575;&#1604;&#1581;&#1583;&#1579;. &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1605;&#1579;&#1604;&#1611;&#1575; &#1585;&#1576;&#1591; &#1581;&#1583;&#1579; &#1576;&#1602;&#1575;&#1574;&#1605;&#1577; &#1594;&#1610;&#1585; &#1605;&#1615;&#1585;&#1578;&#1617;&#1576;&#1577;&#1548; &#1579;&#1605;&#1617; &#1578;&#1581;&#1583;&#1610;&#1583; &#1571;&#1610;&#1617; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1571;&#1579;&#1575;&#1585; &#1575;&#1604;&#1581;&#1583;&#1579;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( '#my-unordered-list' ).on( 'click', function( event ) {
  console.log( event.target ); // &#1610;&#1615;&#1587;&#1580;&#1617;&#1604; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1617;&#1584;&#1610; &#1571;&#1579;&#1575;&#1585; &#1575;&#1604;&#1581;&#1583;&#1579;
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/36/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p>&#1576;&#1575;&#1604;&#1591;&#1617;&#1576;&#1593; &#1587;&#1578;&#1578;&#1593;&#1602;&#1617;&#1583; &#1575;&#1604;&#1571;&#1605;&#1608;&#1585; &#1573;&#1584;&#1575; &#1575;&#1581;&#1578;&#1608;&#1578; &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1602;&#1575;&#1574;&#1605;&#1577; &#1593;&#1604;&#1609; &#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1585;&#1593;&#1610;&#1617;&#1577; &#1590;&#1605;&#1606;&#1607;&#1575;&#1548; &#1608;&#1604;&#1607;&#1584;&#1575; &#1578;&#1615;&#1602;&#1583;&#1617;&#1605; jQuery &#1608;&#1592;&#1610;&#1601;&#1577;&#1611; &#1605;&#1615;&#1587;&#1575;&#1593;&#1583;&#1577; &#1578;&#1587;&#1605;&#1581; &#1604;&#1606;&#1575; &#1576;&#1578;&#1581;&#1583;&#1610;&#1583; &#1571;&#1610; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1606;&#1607;&#1578;&#1605;&#1617; &#1576;&#1607;&#1575;&#1548; &#1605;&#1593; &#1575;&#1604;&#1575;&#1581;&#1578;&#1601;&#1575;&#1592; &#1576;&#1575;&#1604;&#1581;&#1583;&#1579; &#1605;&#1615;&#1585;&#1578;&#1576;&#1591;&#1611;&#1575; &#1576;&#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1584;&#1610; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1608;&#1609; &#1575;&#1604;&#1571;&#1593;&#1604;&#1609;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( '#my-unordered-list' ).on( 'click', 'li', function( event ) {
  console.log( this ); // &#1610;&#1615;&#1587;&#1580;&#1617;&#1604; &#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1602;&#1575;&#1574;&#1605;&#1577; &#1575;&#1604;&#1617;&#1584;&#1610; &#1571;&#1579;&#1575;&#1585; &#1575;&#1604;&#1581;&#1583;&#1579;
});</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/xucuha/1/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p>&#1604;&#1578;&#1601;&#1608;&#1610;&#1590; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1601;&#1575;&#1574;&#1583;&#1578;&#1575;&#1606; &#1575;&#1579;&#1606;&#1578;&#1575;&#1606;: &#1571;&#1608;&#1604;&#1575;&#1607;&#1605;&#1575; &#1571;&#1606;&#1617;&#1607; &#1610;&#1587;&#1605;&#1581; &#1576;&#1585;&#1576;&#1591; &#1593;&#1583;&#1583;&#1613; &#1571;&#1602;&#1604;&#1617; &#1605;&#1606; &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1575;&#1578; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1605;&#1602;&#1575;&#1585;&#1606;&#1577; &#1576;&#1575;&#1604;&#1593;&#1583;&#1583; &#1575;&#1604;&#1617;&#1584;&#1610; &#1606;&#1581;&#1578;&#1575;&#1580;&#1607; &#1604;&#1608; &#1602;&#1585;&#1617;&#1585;&#1606;&#1575; &#1585;&#1576;&#1591; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1576;&#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1615;&#1606;&#1601;&#1585;&#1583;&#1577;&#1548; &#1608;&#1607;&#1584;&#1575; &#1610;&#1615;&#1581;&#1587;&#1617;&#1606; &#1575;&#1604;&#1571;&#1583;&#1575;&#1569; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1576;&#1589;&#1608;&#1585;&#1577; &#1603;&#1576;&#1610;&#1585;&#1577;. &#1608;&#1579;&#1575;&#1606;&#1610; &#1575;&#1604;&#1601;&#1575;&#1574;&#1583;&#1578;&#1610;&#1606; &#1571;&#1606;&#1617;&#1607; &#1610;&#1587;&#1605;&#1581; &#1604;&#1606;&#1575; &#1576;&#1585;&#1576;&#1591; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1576;&#1575;&#1604;&#1570;&#1576;&#1575;&#1569; (&#1603;&#1575;&#1604;&#1602;&#1575;&#1574;&#1605;&#1577; &#1594;&#1610;&#1585; &#1575;&#1604;&#1605;&#1585;&#1578;&#1617;&#1576;&#1577; &#1601;&#1610; &#1605;&#1579;&#1575;&#1604;&#1606;&#1575;)&#1548; &#1605;&#1593; &#1575;&#1591;&#1605;&#1574;&#1606;&#1575;&#1606;&#1575; &#1573;&#1604;&#1609; &#1571;&#1606;&#1617; &#1575;&#1604;&#1571;&#1581;&#1583;&#1579; &#1587;&#1578;&#1615;&#1579;&#1575;&#1585; <em>&#1581;&#1578;&#1617;&#1609; &#1608;&#1573;&#1606; &#1578;&#1594;&#1610;&#1617;&#1585;&#1578; &#1605;&#1615;&#1581;&#1578;&#1608;&#1610;&#1575;&#1578; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1571;&#1576;</em>.</p><p>&#1607;&#1584;&#1575; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; &#1605;&#1579;&#1604;&#1611;&#1575;&#1548; &#1610;&#1615;&#1590;&#1610;&#1601; &#1593;&#1606;&#1589;&#1585; &#1602;&#1575;&#1574;&#1605;&#1577;&#1613; &#1580;&#1583;&#1610;&#1583;&#1611;&#1575; &#1576;&#1593;&#1583; &#1578;&#1601;&#1608;&#1610;&#1590; &#1575;&#1604;&#1581;&#1583;&#1579; &#1573;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1571;&#1576;&#1548; &#1608;&#1575;&#1604;&#1606;&#1617;&#1602;&#1585; &#1601;&#1608;&#1602; &#1607;&#1584;&#1575; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1587;&#1610;&#1615;&#1579;&#1610;&#1585; &#1575;&#1604;&#1581;&#1583;&#1579; &#1603;&#1605;&#1575; &#1610;&#1606;&#1576;&#1594;&#1610;&#1548; &#1583;&#1608;&#1606; &#1575;&#1604;&#1581;&#1575;&#1580;&#1577; &#1604;&#1585;&#1576;&#1591; &#1571;&#1610;&#1617;&#1577; &#1571;&#1581;&#1583;&#1575;&#1579; &#1580;&#1583;&#1610;&#1583;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( '#my-unordered-list' ).on( 'click', 'li', function( event ) {
  console.log( this ); // &#1610;&#1615;&#1587;&#1580;&#1617;&#1604; &#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1602;&#1575;&#1574;&#1605;&#1577; &#1575;&#1604;&#1617;&#1584;&#1610; &#1606;&#1615;&#1602;&#1585; &#1593;&#1604;&#1610;&#1607;
});

$( '&lt;li&gt;a new list item!&lt;/li&gt;' ).appendTo( '#my-unordered-list' );</pre><p><span style="line-height: 22.3999996185303px;">&#1580;&#1585;&#1617;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;</span><a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/40/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><h2 id="-">&#1582;&#1575;&#1578;&#1605;&#1577;</h2><p>&#1578;&#1593;&#1604;&#1617;&#1605;&#1606;&#1575; &#1601;&#1610; &#1607;&#1584;&#1575; &#1575;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1608;&#1587;&#1575;&#1574;&#1604; &#1575;&#1604;&#1605;&#1615;&#1582;&#1578;&#1604;&#1601;&#1577; &#1604;&#1604;&#1573;&#1606;&#1589;&#1575;&#1578; &#1573;&#1604;&#1609; &#1578;&#1601;&#1575;&#1593;&#1604; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1605;&#1593; &#1589;&#1601;&#1581;&#1578;&#1606;&#1575;&#1548; &#1576;&#1605;&#1575; &#1601;&#1610; &#1584;&#1604;&#1603; &#1603;&#1610;&#1601;&#1610;&#1617;&#1577; &#1575;&#1604;&#1575;&#1587;&#1578;&#1601;&#1575;&#1583;&#1577; &#1605;&#1606; &#1575;&#1604;&#1578;&#1601;&#1608;&#1610;&#1590; &#1604;&#1578;&#1581;&#1587;&#1610;&#1606; &#1603;&#1601;&#1575;&#1569;&#1577; &#1585;&#1576;&#1591; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; &#1576;&#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585;. &#1587;&#1606;&#1578;&#1593;&#1585;&#1617;&#1601; &#1575;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1602;&#1575;&#1583;&#1605; &#1603;&#1610;&#1601; &#1606;&#1615;&#1581;&#1585;&#1617;&#1603; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1578;&#1571;&#1579;&#1610;&#1585;&#1575;&#1578; &#1575;&#1604;&#1581;&#1585;&#1603;&#1610;&#1617;&#1577; &#1601;&#1610; jQuery.</p><p><span style="line-height: 22.3999996185303px;">&#1578;&#1585;&#1580;&#1605;&#1577; (&#1576;&#1588;&#1610;&#1569; &#1605;&#1606; &#1575;&#1604;&#1578;&#1589;&#1585;&#1601;)&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1585;&#1575;&#1576;&#1593;&nbsp;&#1605;&#1606; &#1587;&#1604;&#1587;&#1604;&#1577; &nbsp;</span><a style="line-height: 22.3999996185303px;" rel="external nofollow" href="http://jqfundamentals.com/">jQuery Fundamentals</a><span style="line-height: 22.3999996185303px;">&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1605;&#1572;&#1604;&#1617;&#1601;&#1578;&#1607;&#1575;&nbsp;Rebecca Murphey.</span></p>
]]></description><guid isPermaLink="false">62</guid><pubDate>Thu, 16 Apr 2015 05:25:00 +0000</pubDate></item><item><title>&#x62A;&#x648;&#x627;&#x628;&#x639; &#x627;&#x644;&#x627;&#x646;&#x62A;&#x642;&#x627;&#x644; &#x639;&#x628;&#x631; &#x627;&#x644;&#x635;&#x651;&#x641;&#x62D;&#x629; &#x648;&#x627;&#x644;&#x62A;&#x651;&#x639;&#x62F;&#x64A;&#x644; &#x639;&#x644;&#x649; &#x627;&#x644;&#x639;&#x646;&#x627;&#x635;&#x631; &#x641;&#x64A; jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%AA%D9%88%D8%A7%D8%A8%D8%B9-%D8%A7%D9%84%D8%A7%D9%86%D8%AA%D9%82%D8%A7%D9%84-%D8%B9%D8%A8%D8%B1-%D8%A7%D9%84%D8%B5%D9%91%D9%81%D8%AD%D8%A9-%D9%88%D8%A7%D9%84%D8%AA%D9%91%D8%B9%D8%AF%D9%8A%D9%84-%D8%B9%D9%84%D9%89-%D8%A7%D9%84%D8%B9%D9%86%D8%A7%D8%B5%D8%B1-%D9%81%D9%8A-jquery-r61/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_04/jquery_480x300.png.19718334f4c396c447618dc331901a47.png" /></p>

<p>
	توفّر jQuery أدوات قويّة لإيجاد العنصر أو العناصر التي تريدها في الصّفحة، ثمّ العمل بهذه العناصر للوصول إلى النّتيجة المرغوبة. تسهّل jQuery بأدواتها هذه عمليّات كانت لتكون أكثر تعقيدًا لو أردنا تنفيذها من خلال وظائف DOM الأصليّة.
</p>

<p>
	سنطّلع في هذا الجزء على بعض (لا كلّ) وظائف الانتقال عبر الصّفحة وتّعديل العناصر في jQuery. وقبل أن نبدأ، علينا فهم بعض المصطلحات الضّروريّة. لنفترض أنّ لدينا نصّ HTML التّالي:
</p>

<pre class="html ipsCode prettyprint" data-pbcklang="html" data-pbcktabsize="">
&lt;ul&gt;
  &lt;li&gt;
    &lt;span&gt;
      &lt;i&gt;Foo&lt;/i&gt;
    &lt;/span&gt;
  &lt;/li&gt;
  &lt;li&gt;Bar&lt;/li&gt;
&lt;/ul&gt;</pre>

<ul>
<li>
		نقول عن عنصر القائمة الأوّل (<code>&lt;li&gt;</code>) أنّه <strong>ابن (child)</strong> القائمة غير المرتّبة (<code>&lt;ul&gt;</code>).
	</li>
	<li>
		نقول عن القائمة غير المرتّبة (<code>&lt;ul&gt;</code>) أنّها <strong>والد (parent)</strong> عنصري القائمة الاثنين.
	</li>
	<li>
		نقول عن العنصر <code>&lt;span&gt;</code> أنّه <strong>خَلَفُ (descendant)</strong> القائمة غير المرتّبة.
	</li>
	<li>
		نقول عن القائمة غير المرتّبة أنّها <strong>سَلَفٌ (ancestor)</strong> لكلّ ما داخلها.
	</li>
	<li>
		نقول عن عنصري القائمة أنّهما <strong>شقيقان (siblings)</strong>.
	</li>
</ul>
<h2 id="-traversal-">
	الانتقال عبر الصّفحة (Traversal)
</h2>

<p>
	تسمح jQuery لنا بالانتقال عبر عناصر HTML الّتي تكوّن صفحتنا. إذ نُنشئ أوّلًا تحديدًا مبدئيًّا ثمّ ننتقل عبر DOM انطلاقًا منه. وخلال مسيرنا عبر DOM، فإنّنا نُغيّر من تحديدنا الأوّل فنضيف إليه أو نحذف منه بعض العناصر، أو نستبدل به تحديدًا آخر بالكامل في بعض الأحيان.
</p>

<h3 id="-">
	تصفية التّحديدات
</h3>

<p>
	بإمكانك تصفية تحديد موجودٍ بحيث يتضمّن فقط العناصر الّتي تطابق معاييرَ مُحدّدة. بإمكانك مثلًا إجراء التّصفية بإحدى الطّرق التّالية:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
var listItems = $( 
'li' );

// صفِّ التّحديد ليحوي فقط العناصر ذات الصّنف 'special'
var special = listItems.filter( '.special' );

// صفّ التّحديد ليحوي فقط العناصر من غير الصّنف 'special'
var notSpecial = listItems.not( '.special' );

// صفّ التّحديد ليحوي فقط العناصر الّتي تتضمّن span
var hasSpans = listItems.has( 'span' );</pre>

<p>
	من المهمّ أن تعرف أن الوظيفة ‎<code>.not()</code>‎ <em>ليست</em> عكس ‎<code>.is()</code>‎، لأنّ ‎<code>.is()</code>‎ تُعيد قيمة منطقيّة (<code>true</code> أو <code>false</code>)، بينما تُعيد ‎<code>.not()</code>‎ كائن jQuery جديدًا.
</p>

<h3 id="-">
	إيجاد العناصر انطلاقًا من تحديد
</h3>

<p>
	يمكن الاستفادة من تحديد أوّليّ كأساس لإنشاء تحديدات إضافيّة؛ فإذا كان لديك تحديدٌ يحوي عنصر قائمة مُفردًا مثلًا، وأردت التّعامل مع "أشقّائه" أو مع القائمة غير المُرتّبة الّتي تحويه، فبإمكانك إنشاء تحديد جديد انطلاقًا من التّحديد الموجود بسهولة:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
// اختر 
أوّل عنصر قائمة في الصّفحة
var listItem = $( 'li' ).first(); // أيضًا: .last()

// اختر أشقّاء عنصر القائمة
var siblings = listItem.siblings();

// اختر الشّقيق التّالي لعنصر القائمة
var nextSibling = listItem.next(); // أيضًا: .prev()

// اختر والد عنصر القائمة
var list = listItem.parent();

// اختر عناصر القائمة الّتي تنحدر مباشرةً من القائمة
var listItems = list.children();

// اختر كلّ عناصر القائمة ضمن القائمة، بما في ذلك العناصر الفرعيّة
var allListItems = list.find( 'li' );

// اختر كل أسلاف عنصر القائمة ذوي الصّنف "module"
var modules = listItem.parents( '.module' );

// اختر أقرب سلفٍ لعنصر القائمة له الصّنف "module"
var module = listItem.closest( '.module' 
);</pre>

<p>
	بإمكانك كذلك الإضافة على التّحديد الحاليّ باستخدام الوظيفة ‎<code>.add()</code>‎، الّتي تقبل مُحدِّدًا أو مصفوفة عناصر أو نص HTML أو كائن jQuery.
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
var list = $( '#my-unordered-list' );

// افعل شيئًا ما بالقائمة ثم ...

var listAndListItems = list.add( '#my-unordered-list li' 
);</pre>

<h3 id="-">
	العودة إلى التّحديد الأصليّ
</h3>

<p>
	تحتفظ jQuery بإشارة إلى تحديد الأصليّ عندما تستخدمه للانتقال إلى تحديدات أخرى انطلاقًا منه، في حال أردت العودة إلى التّحديد الأصليّ. افترض مثلًا أنّك حدّدت قائمة غير مرتّبه، ثمّ أردت التّعديل على عناصر القائمة، ثمّ العودة مجدّدًا للعمل على القائمة غير المرتّبة، عندها بإمكانك استخدام الوظيفة ‎<code>.end()</code>‎ للرّجوع إلى التّحديد الأصليّ:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
$( '#my-unordered-list' )
 .find('li')

 // نحن الآن نعمل على عناصر القائمة
 .addClass('special')

.end()

// عدنا الآن للعمل على القائمة ذاتها
.addClass('super-special');</pre>

<p>
	تُسهِّل الوظيفة ‎<code>.end()</code>‎ إجراء تعديلات كثيرة في جملة واحدة، إلّا أنّ هذا الأسلوب لا يُلقي بالًا لوضوح النّصّ البرمجيّ، فهو أشبه بأن تحكي قصّة دون أن تلتقط أنفاسك. لهذا السّبب لا أنصحك بالإكثار من استعماله، فهو يؤدّي في معظم الحالات إلى جعل قراءة النّصّ البرمجيّ وصيانته وتنقيحه أكثر صعوبة.
</p>

<p>
	فيما يلي حلّ أفضل للمشكلة ذاتها:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
var list = $( 
'#my-unordered-list' );
var listItems = list.find('li');

listItems.addClass( 'special' );
list.addClass( 'super-special' );</pre>

<p>
	توفّر jQuery أيضًا الوظيفة ‎<code>.addBack()</code>‎ إن أردت إضافة تحديدك الأصليّ إلى التّحديد الحاليّ. مثال:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
$( 'li.special' )

 .siblings()

  // نحن نعمل الآن على أشقّاء التّحديد السّابقة
  .removeClass( 'important' )

 .addBack()

 // الآن نعمل على عناصر القائمة الأصليّة وأشقائها **معًا**
 .addClass( 'urgent' );</pre>

<p>
	هل اختلط عليك الأمر؟ الوظيفة ‎<code>.addBack()</code>‎ تشبه الوظيفة ‎<code>.end()</code>‎ في عيوبها، فكلاهما (وإن كان لهما استخدامها) يزيدان تعقيد النّصّ البرمجيّة. الحلّ الأفضل هو استخدام الوظيفة ‎<code>.add()</code>‎ لدمج التّحديدين الأصليين معًا:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
var specialListItems = $( 
'li.special' );
var otherListItems = specialListItems.siblings();

otherListItems.removeClass( 'important' );
specialListItems.add( otherListItems ).addClass( 'urgent' 
);</pre>

<p>
	هناك وظائف عديدة لم نتطرّق إليها هنا، يمكنك الاطّلاع عليها في وثائق <a href="http://api.jquery.com/category/traversing/" rel="external nofollow">الانتقال عبر الصّفحة</a>.
</p>

<h2 id="-manipulation-">
	التّعامل مع العناصر (Manipulation)
</h2>

<p>
	تسمح وظائف التّعامل مع العناصر في jQuery بتغيير DOM الصّفحة بصياغة أكثر بساطة من تلك الّتي توفّرها وظائف DOM الخام. تُعيد وظائف التّعامل مع العناصر في jQuery كائن jQuery الّتي استدعيت للعمل عليه، وهذا يعني إمكانيّة ربطها في سلسلة أو دمجها مع وظائف jQuery أخرى كالّتي ناقشناها في الفقرات السّابقة.
</p>

<h3 id="-">
	تعديل العناصر
</h3>

<p>
	كثيرةٌ هي طرق تعديل العناصر في jQuery. سنطّلع فيما يلي على طرق إنجاز المهام الأكثر شيوعًا.
</p>

<h4 id="-classes-">
	إضافة أو حذف الأصناف (classes)
</h4>

<p>
	يمكن الاستفادة من أصناف الكائنات في HTML بأن نستهدفها في CSS بغرض تنسيقها، كما يُستفاد منها في إنشاء تحديدات jQuery. فمثلًا يمكن لعنصر في الصّفحة أن يقع تحت الصّنف <code>hidden</code>، والّذي يُستخدم في CSS لجعل خاصّة <code>display</code> موافقة للقيمة <code>none</code> للعناصر من هذا الصّنف، ثمّ يمكن حذف هذا الصّنف أو إضافته لتغيير حالة ظهور العناصر الموافقة في jQuery:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( 
'li' ).addClass( 'hidden' );
$( 'li' ).eq( 1 ).removeClass( 'hidden' 
);</pre>

<p>
	جرّب المثال في <a class="jsbin-embed" href="http://jsbin.com/fopitohami/13/embed?css,js,console,output" rel="external nofollow">ساحة التّجربة</a> (تأكد من ضغط زر Run with JS في هذا المثال وكلّ الأمثلة التالية)
</p>

<p>
	إن تطلّبت حالتك إضافة صنفٍ أو حذفه مرارًا، فبإمكانك استخدام الوظيفة ‎<code>.toggleClass()</code>‎ الّتي تُبدّل حالة الصّنف على العنصر، فتضيفه إن لم يكن موجودًا أو تحذفه إن وُجد:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( 'li' ).eq( 1 
).toggleClass( 'hidden' );</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/14/embed?css,js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<h4 id="-">
	تغيير المظهر
</h4>

<p>
	<em>ملاحظة: يُفضّل دومًا استخدام الأصناف واستهدافها بقواعد CSS لتغيير طريقة عرض العناصر، والاقتصار على استخدام jQuery في إضافة هذه الأصناف أو حذفها كما ورد للتوّ. في هذه الفقرة سنتعرّف كيف نُغيّر مظاهر العناصر مُباشرةً في jQuery، ولكننا نُفضِّل دومًا الأسلوب الأوّل إن كان يُحقِّق النّتائج ذاتها.</em>
</p>

<p>
	عندما تعجز عن تحقيق هدفك بإضافة الأصناف أو حذفها، فإنّ jQuery تقدّم الوظيفة <code>.css()</code> الّتي تسمح بتعيين مظهر العناصر مباشرةً، ولعلّ هذا يكون ضروريًّا عادةً عندما تحتاج إلى إسناد قيم عدديّة لا يمكن حسابها إلّا أثناء عمل التّطبيق، كمعلومات توضّع العناصر في الصّفحة. لا يُفضَّل استخدام الوظيفة ‎<code>.css()</code>‎ لإجراء تنسيقات بسيطة مثل ‎<code>display: none</code>‎، بل يُفضَّل في معظم الحالات إنجاز الغاية ذاتها باستخدام الأصناف وCSS.
</p>

<p>
	افترض مثلًا أنّنا نريد تعيين مظهر العنصر بالاعتماد على عرض والده، وربّما يصعب أو يستحيل معرفة عرض الوالد مُسبقًا عند اعتماد تخطيط مرنٍ للصّفحة. في هذه الحالة قد نلجأ إلى الوظيفة ‎<code>.css()</code>‎ لتنسيق العنصر:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
var list = $( 
'#my-unordered-list' );
var width = Math.floor( list.width() * 0.1 );

list.find('li').each(function( index, elem ) {
  var padding = width * index;
  $( elem ).css( 'padding-right', padding + 'px' 
);
});</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/16/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	إن احتجت إلى تعيين أكثر من خاصّة في وقت واحدٍ، مرّر كائنًا إلى الوظيفة ‎<code>.css()</code>‎ بدلًا من اسم الخاصّة وقيمتها. لاحظ أنّ عليك إحاطة أيّة خاصّة تحوي الرّمز "-" بعلامتي اقتباس:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( 
'li' ).eq( 1 ).css({
 'font-size': '20px',
 'padding-right': '20px'
});</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/17/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<h4 id="-forms-">
	تغيير قيم النّماذج (forms)
</h4>

<p>
	تقدّم jQuery الوظيفة ‎<code>.val()</code>‎ لتعديل قيمة العناصر في النّماج مثل <code>input</code> و<code>select</code>.
</p>

<p>
	بإمكانك تمرير سلسلة نصّيّة لتعيين محتوى حقول <code>input</code> النّصّيّة:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( 
'input[type="text"]' ).val( 'new value' 
);</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/18/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	بالنّسبة للعناصر من نوع <code>select</code>، بإمكانك تعيين الخيار المُختار باستخدام ‎<code>.val()</code>‎ أيضًا:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( 'select' ).val( '2' 
);</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/19/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	أمّا لحقول <code>input</code> من نوع checkbox، فعليك تعيين الخاصّة <code>checked</code> على العنصر بالوظيفة ‎<code>.prop()</code>‎.
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( 
'input[type="checkbox"]' ).prop( 
'checked', 'checked' );</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/20/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	<em>ملاحظة: أُضيفت الوظيفة ‎<code>.prop()</code>‎ في الإصدارة 1.6 من jQuery؛ وقبل ذلك كانت تُستخدم الوظيفة ‎<code>.attr()</code>‎ للغرض ذاته، وهي ما تزال تعمل في الإصدارات الحديثة من jQuery، ولكنّها في حالة <code>checked</code> تكتفي باستدعاء ‎<code>.prop()</code>‎. إن كنت تستخدم إصدارةً أحدث من 1.6، فأنصحك باستخدام ‎<code>.prop()</code>‎ دومًا لتعيين الخاصّة <code>checked</code> وخصائص عناصر DOM الأخرى. اطّلع على <a href="http://api.jquery.com/prop/" rel="external nofollow">الوثائق</a> لتفاصيل أكثر.</em>
</p>

<h4 id="-attributes-">
	تغيير الصّفات (attributes) الأخرى
</h4>

<p>
	بإمكانك استخدام وظيفة ‎<code>.attr()</code>‎ لتغيير صفات العناصر، فيمكنك مثلًا تغيير عنوان رابط (الخاصّة <code>title</code> لعنصر <code>&lt;a&gt;</code>):
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( 'a' ).attr( 'href', 
'new title');</pre>

<p>
	عند تعيين قيمة لصفة، بإمكانك تمرير دالّة في موضع المُعامل الثّاني للوظيفة، ومثلها مثل كلّ دوالّ الكتابة السّابقة، تتلقّى هذه الدّالّة مُعاملين اثنين: دليل العنصر الّذي تعمل عليه، والقيمة الحاليّة للصّفة. يجب أن تُعيد هذه الدّالة القيمة الجديدة للصّفة:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( 'a' ).attr( 
'href', function(index, value) {
  return value + '?special=true';
});</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/21/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	بإمكانك حذف الصّفات أيضًا، وذلك باستخدام ‎<code>.removeAttr()</code>‎.
</p>

<h3 id="-">
	الحصول على معلومات من العناصر
</h3>

<p>
	ناقشنا في الجزء السّابق (أساسيّات jQuery) فكرة وظائف القراءة والكتابة. كلّ الوظائف الّتي يمكن استخدامها لتغيير العناصر، يمكن أيضًا استخدامها لقراءة معلومات من تلك العناصر. فيمكن مثلًا استخدام الوظيفة ‎<code>.val()</code>‎ الّتي وصفناها أعلاه كوظيفة قراءة وكتابة معًا:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
var input = $( 'input[type="text"]' );
input.val( 'new value' );
input.val(); // returns 'new value'</pre>

<p>
	وكذلك الأمر بالنّسبة للوظيفة ‎<code>.css()</code>‎، إذ يمكن استخدامها لقراءة قيمة خصائص CSS مُفردة بإمرار اسم الخاصّة فقط دون قيمة:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
var listItemColor = $( 'li' ).css( 
'color' );</pre>

<p>
	عندما تُستخدم وظائف التّعامل مع العناصر للقراءة، فإنّها <em>تعمل فقط مع العنصر الأول في التّحديد</em>، باستثناء الوظيفة ‎<code>.text()</code>‎ الّتي تقرأ المحتوى النّصيّ <em>لكلّ</em> العناصر المُحدّدة إن لم يُمرّر معامل إليها.
</p>

<h3 id="-">
	إضافة العناصر إلى الصّفحة
</h3>

<p>
	سواءٌ حدّدت عنصرًا أو أنشأت واحدًا جديدًا، فبإمكانك إضافة هذا العنصر إلى الصّفحة يمكن فعل ذلك بطريقتين: باستدعاء وظيفة تتبع للعنصر (أو العناصر) المطلوب إضافته، أو باستدعاء وظيفة تتبع لعنصر مرتبط بذلك الّذي تريد إضافته.
</p>

<p>
	افترض مثلًا أنّك تريد نقل عنصر في قائمة من رأسها إلى ذيلها، هناك عدّة طرق لفعل ذلك.
</p>

<p>
	بإمكانك مثلًا إضافة العنصر إلى القائمة باستدعاء الوظيفة ‎<code>.appendTo()</code>‎ على عنصر القائمة ذاته:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
var listItem = $( '#my-unordered-list li' ).first();
listItem.appendTo( '#my-unordered-list' );</pre>

<p>
	<span style="line-height: &#13;
22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/22/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	وبإمكانك أيضًا إضافة العنصر باستدعاء ‎<code>.append()</code>‎ على القائمة:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
var listItem = $( '#my-unordered-list li' ).first();
$( '#my-unordered-list' ).append( listItem );</pre>

<p>
	أو إضافته باستدعاء ‎<code>.insertAfter()</code>‎ على العنصر المُراد نقله مُمرّرًا العنصر الأخير في القائمة إلى الوظيفة:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
var listItems = $( '#my-unordered-list li' );
listItems.first().insertAfter( listItems.last() );</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/24/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	أو إضافته باستدعاء ‎<code>.after()</code>‎ على العنصر الأخير في القائمة مُمرًّرا العنصر الأولى في القائمة إلى الوظيفة:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
var listItems = $( '#my-unordered-list li' );
listItems.last().after( listItems.first() );</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/25/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	هناك طرق آخرى كثير لإضافة العناصر، فبإمكانك إضافتها <a href="http://api.jquery.com/category/manipulation/dom-insertion-around/" rel="external nofollow">حول</a> عناصر أخرى أو <a href="http://api.jquery.com/category/manipulation/dom-insertion-inside/" rel="external nofollow">داخلها</a> أو <a href="http://api.jquery.com/category/manipulation/dom-insertion-outside/" rel="external nofollow">خارجها</a> بحسب حاجتك.
</p>

<p>
	تعتمد أكثر الطّرق كفاءة في إضافة عنصر إلى الصّفحة على العناصر الّتي تتوفّر بين يديك بالفعل. فقد ترغب في إضافة العنصر إلى القائمة غير المُرتّبة في المثال السّابق إن كنت قد حدّدت القائمة غير المرتّبة من قبل لغرض آخر؛ أو إن كنت قد حدّدت عناصر القائجة جميعها، فقد يكون إضافة العنصر الأول بعد العنصر الأخير أمرًا أسهل.
</p>

<p>
	عندما تختار الطّريقة المناسبة لإضافة العنصر، فلا تكتفِ بالنّظر في سهولة الطّريقة، بل فكّر في إمكانيّة صيانتها لاحقًا. تجنّب الطّرق الّتي تعتمد على افتراض بنية مُحدِّدة بدقَّة لصفحتك، فقد تقرّر تغيير هذه البنية فيما بعد.
</p>

<h3 id="-">
	نسخ العناصر
</h3>

<p>
	بإمكانك إنشاء نسخة من عنصر أو مجموعة عناصر باستخدام الوظيفة ‎<code>.clone()</code>‎ في jQuery، وستُنشئ النُّسخة في الذّاكرة دون أن تُدرج في الصّفحة، فعليك فعل ذلك بنفسك إن أردته. بإمكانك تعديل العناصر المنسوخة قبل إضافتها:
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
var clones = $( 'li' ).clone();

clones.html(function( index, oldHtml ) {
  return oldHtml + '!!!';
});

$( '#my-unordered-list' ).append( clones );</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/26/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	<em><em>ملاحظة*</em>: لن تمنعك jQuery من نسخ عنصر ذي مُعرِّف (ID)، ولكن عليك التأكّد من حذف المُعرِّف أو تغييره في العنصر المنسوخ بتعديل الصّفة <code>id</code> قبل إدراجه في المستند، إذ لا ينبغي أ يوجد عنصران بمُعرِّف واحدٍ في الصّفحة.</em>
</p>

<h3 id="-">
	حذف العناصر
</h3>

<p>
	هناك ثلاث طرق لحذف العناصر من الصّفحة: ‎<code>.remove()</code>‎‏ و‎<code>.detach()</code>‎‏ و‎<code>.replaceWith()</code>‎‏، ولكلّ منها غرضٌ مُختلف.
</p>

<p>
	يجب استخدام ‎<code>.remove()</code>‎‏ عند الحاجة لحذف العناصر بصورة دائمة، فهي ستحذف مع العنصر كلّ مُتوليّات الأحداث المُرتبطة به (event handlers). تُعيد الوظيفة ‎<code>.remove()</code>‎‏ إشارةً إلى العناصر المُحذوفة، ولكن عند إضافة هذه العناصر مرّة ثانيةً، فلن تكون أيّة أحداث مُرتبطةً بها.
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( '#my-unordered-list li' ).click(function() {
  alert( $( this ).text() );
});

var removedListItem = $( '#my-unordered-list li' ).first().remove();

removedListItem.appendTo( '#my-unordered-list' );
removedListItem.trigger( 'click' ); // لا رسالة تنبيه!</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/27/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<p>
	تُفيد الوظيفة ‎<code>.detach()</code>‎‏ في حذف العناصر مؤقّتًا من الصّفحة، فمثلًا إن رغب في إجراء تعديلات كبيرة على بنية الصّفحة باستخدام jQuery، فقد يكون حذف العناصر مؤقّتًا من الصّفحة ثمّ إضافتها ثانيةً أفضل أداءً بمراحل. ستحتفظ العناصر المحذوفة بهذه الوظيفة بمُتولّيات الأحداث المُرتبطة بها، ويمكن بعد ذلك إضافتها إلى الصّفحة مُجدّدًا باستخدام ‎<code>.appendTo()</code>‎‏ أو غيرها من وظائف الإضافة.
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="">
$( 
'#my-unordered-list li' ).click(function() {
  alert( $( this ).text() );
});

var detachedListItem = $( '#my-unordered-list li' 
).first().detach();

// افعل شيئًا ما مُعقّدًا بعنصر القائمة

detachedListItem.appendTo( '#my-unordered-list' );
detachedListItem.trigger( 'click' ); // 
alert!</pre>

<p>
	أخيرًا لدينا الوظيفة ‎<code>.replaceWith()</code>‎‏ الّتي تُحلِّ عنصرًا أو نصّ HTML محلّ عنصرٍ أو عناصر أخرى. تُعاد العناصر الّتي أُزيلت من الوظيفة، ولكنّ كلّ متولّيات الأحداث المرتبطة بها تُحذف، تمامًا كالوظيفة ‎<code>.remove()</code>‎‏.
</p>

<pre class="javascript ipsCode prettyprint" data-pbcklang="javascript" data-pbcktabsize="4">
$( '#my-unordered-list li' ).click(function() {
  alert( $( this ).text() );
});

var replacedListItem = $( '#my-unordered-list li' ).first()
  .replaceWith( '&lt;li&gt;new!&lt;/li&gt;' );

replacedListItem.appendTo( '#my-unordered-list' );

replacedListItem.trigger( 'click' ); // لا رسالة تنبيه!</pre>

<p>
	<span style="line-height: 22.3999996185303px;">جرّب المثال في </span><a class="jsbin-embed" href="http://jsbin.com/fopitohami/28/embed?js,console,output" rel="external nofollow">ساحة التّجربة</a>
</p>

<h2 id="-">
	خاتمة
</h2>

<p>
	تعلّمنا في هذا الجزء الطّرق المختلفة للانتقال بين العناصر في الصّفحة، وكيفيّة نقلها وتغييرها وإضافة عناصر جديدة. سنتعلّم في الجزء القادم كيف نُنصِت لتفاعل المستخدم مع صفحتنا.
</p>

<p>
	<span style="line-height: &#13;
22.3999996185303px;">ترجمة (بشيء من التصرف) </span><span style="line-height: 22.3999996185303px;">للجزء الثالث من سلسلة  </span><a href="http://jqfundamentals.com/" rel="external nofollow">jQuery Fundamentals</a> <span style="line-height: &#13;
22.3999996185303px;">لمؤلّفتها Rebecca Murphey.</span>
</p>
]]></description><guid isPermaLink="false">61</guid><pubDate>Tue, 14 Apr 2015 05:08:00 +0000</pubDate></item><item><title>&#x623;&#x633;&#x627;&#x633;&#x64A;&#x651;&#x627;&#x62A; jQuery</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A3%D8%B3%D8%A7%D8%B3%D9%8A%D9%91%D8%A7%D8%AA-jquery-r60/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_04/jquery-mark-dark.gif.f2238ad5538bf2e835aade5f61cf2278.gif" /></p>
<p>&#1578;&#1615;&#1587;&#1607;&#1617;&#1616;&#1604; &#1605;&#1603;&#1578;&#1576;&#1577; jQuery &#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1605;&#1581;&#1578;&#1608;&#1610;&#1575;&#1578; &#1589;&#1601;&#1581;&#1577; HTML &#1576;&#1593;&#1583; &#1571;&#1606; &#1610;&#1593;&#1585;&#1590;&#1607;&#1575; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581;&#1548; &#1608;&#1578;&#1608;&#1601;&#1617;&#1585; &#1571;&#1583;&#1608;&#1575;&#1578; &#1578;&#1615;&#1587;&#1575;&#1593;&#1583;&#1603; &#1601;&#1610; &#1605;&#1578;&#1575;&#1576;&#1593;&#1577; &#1578;&#1601;&#1575;&#1593;&#1604; &#1575;&#1604;&#1605;&#1587;&#1578;&#1582;&#1583;&#1605; &#1605;&#1593; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&#1548; &#1608;&#1578;&#1581;&#1585;&#1610;&#1603; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610;&#1607;&#1575;&#1548; &#1608;&#1575;&#1604;&#1578;&#1617;&#1608;&#1575;&#1589;&#1604; &#1605;&#1593; &#1575;&#1604;&#1582;&#1608;&#1575;&#1583;&#1610;&#1605; &#1583;&#1608;&#1606; &#1573;&#1593;&#1575;&#1583;&#1577; &#1578;&#1581;&#1605;&#1610;&#1604; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;. &#1587;&#1606;&#1588;&#1585;&#1581; &#1607;&#1584;&#1607; &#1575;&#1604;&#1571;&#1583;&#1608;&#1575;&#1578; &#1576;&#1593;&#1583; &#1602;&#1604;&#1610;&#1604;. &#1604;&#1606;&#1576;&#1583;&#1571; &#1571;&#1608;&#1617;&#1604;&#1611;&#1575; &#1576;&#1575;&#1604;&#1575;&#1591;&#1617;&#1604;&#1575;&#1593; &#1593;&#1604;&#1609; &#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1575;&#1578; jQuery&#1548; &#1608;&#1603;&#1610;&#1601; &#1610;&#1605;&#1603;&#1606; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1608;&#1592;&#1610;&#1601;&#1578;&#1607;&#1575; &#1575;&#1604;&#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1577;: &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1593;&#1606;&#1575;&#1589;&#1585; &#1605;&#1615;&#1581;&#1583;&#1617;&#1614;&#1583;&#1577; &#1601;&#1610; &#1575;&#1604;&#1589;&#1601;&#1581;&#1577; &#1608;&#1601;&#1593;&#1604; &#1588;&#1610;&#1569;&#1613; &#1605;&#1575; &#1576;&#1607;&#1575;.</p><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1610;&#1601;&#1578;&#1585;&#1590; &#1607;&#1584;&#1575; &#1575;&#1604;&#1583;&#1617;&#1604;&#1610;&#1604; &#1571;&#1606;&#1617;&#1603; &#1593;&#1604;&#1609; &#1593;&#1604;&#1605; &#1576;&#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1575;&#1578; HTML &#1608;&#1605;&#1615;&#1581;&#1583;&#1617;&#1616;&#1583;&#1575;&#1578; CSS. &#1573;&#1606; &#1604;&#1605; &#1578;&#1603;&#1606; &#1578;&#1571;&#1604;&#1601; &#1603;&#1610;&#1601; &#1610;&#1605;&#1603;&#1606; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1575;&#1578; CSS &#1604;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1593;&#1606;&#1575;&#1589;&#1585; &#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&#1548; &#1601;&#1593;&#1604;&#1610;&#1603; &#1571;&#1608;&#1617;&#1604;&#1611;&#1575; &#1578;&#1593;&#1604;&#1617;&#1605; &#1584;&#1604;&#1603; &#1602;&#1576;&#1604; &#1575;&#1604;&#1588;&#1585;&#1608;&#1593; &#1601;&#1610; &#1605;&#1578;&#1575;&#1576;&#1593;&#1577; &#1607;&#1584;&#1575; &#1575;&#1604;&#1583;&#1617;&#1604;&#1610;&#1604;.</em></p><h2 id="-">&#1605;&#1575; &#1607;&#1584;&#1575; &#1575;&#1604;&#1585;&#1605;&#1586;: <code>$</code>&#1567;</h2><p>&#1578;&#1608;&#1601;&#1617;&#1585; &#1605;&#1603;&#1578;&#1576;&#1577; jQuery &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; <code>jQuery</code>&#1548; &#1575;&#1604;&#1578;&#1610; &#1578;&#1578;&#1610;&#1581; &#1604;&#1603; &#1578;&#1581;&#1583;&#1610;&#1583; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1576;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1575;&#1578; CSS.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var listItems = jQuery( 'li' );</pre><p>&#1573;&#1606; &#1602;&#1585;&#1571;&#1578; &#1605;&#1606; &#1602;&#1576;&#1604; &#1576;&#1585;&#1575;&#1605;&#1580; &#1578;&#1587;&#1578;&#1582;&#1583;&#1605; jQuery&#1548; &#1601;&#1604;&#1575; &#1576;&#1583;&#1617; &#1571;&#1606;&#1617;&#1603; &#1575;&#1593;&#1578;&#1583;&#1578; &#1593;&#1604;&#1609; &#1607;&#1584;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var listItems = $( 'li' );</pre><p>&#1603;&#1605;&#1575; &#1606;&#1575;&#1602;&#1588;&#1606;&#1575; &#1601;&#1610; &#1575;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602; (&#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1575;&#1578; JavaScript)&#1548; &#1601;&#1603;&#1604;&#1617; &#1575;&#1604;&#1571;&#1587;&#1605;&#1575;&#1569; &#1578;&#1603;&#1575;&#1583; &#1578;&#1603;&#1608;&#1606; &#1587;&#1617;&#1604;&#1610;&#1605;&#1577; &#1601;&#1610; JavaScript &#1605;&#1575; &#1604;&#1605; &#1578;&#1576;&#1583;&#1571; &#1576;&#1585;&#1602;&#1605; &#1571;&#1608; &#1578;&#1581;&#1608;&#1610; &#1573;&#1588;&#1575;&#1585;&#1577; "-". &#1608;&#1604;&#1584;&#1575; &#1601;&#1575;&#1604;&#1575;&#1587;&#1605; <code>$</code> &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1571;&#1582;&#1610;&#1585; &#1604;&#1610;&#1587; &#1573;&#1604;&#1617;&#1575; &#1575;&#1587;&#1605;&#1611;&#1575; &#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1611;&#1575; &#1604;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; <code>jQuery</code>&#1548; &#1608;&#1604;&#1608; &#1575;&#1591;&#1617;&#1604;&#1593;&#1578; &#1593;&#1604;&#1609; <a rel="external nofollow" href="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js">&#1605;&#1589;&#1583;&#1585; jQuery</a>&#1548; &#1604;&#1602;&#1585;&#1571;&#1578; &#1607;&#1584;&#1575; &#1602;&#1585;&#1576; &#1606;&#1607;&#1575;&#1610;&#1578;&#1607;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// Expose jQuery to the global object
window.jQuery = window.$ = jQuery;</pre><p>&#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1587;&#1578;&#1583;&#1593;&#1610; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &lrm;<code>$()</code>&lrm; &#1608;&#1578;&#1605;&#1585;&#1617;&#1585; &#1604;&#1607;&#1575; &#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1611;&#1575;&#1548; &#1601;&#1573;&#1606;&#1617;&#1603; &#1578;&#1581;&#1589;&#1604; &#1593;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; jQuery &#1580;&#1583;&#1610;&#1583;&#1613;. &#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604;&#1617; &#1601;&#1610; JavaScript &#1607;&#1610; &#1575;&#1604;&#1571;&#1582;&#1585;&#1609; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578;&#1548; &#1608;&#1607;&#1584;&#1575; &#1610;&#1593;&#1606;&#1610; &#1571;&#1606;&#1617; &#1604;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; <code>$</code> (&#1608;<code>jQuery</code> &#1576;&#1575;&#1604;&#1591;&#1617;&#1576;&#1593;) &#1582;&#1589;&#1575;&#1574;&#1589; &#1608;&#1608;&#1592;&#1575;&#1574;&#1601; &#1571;&#1610;&#1590;&#1611;&#1575;. &#1605;&#1579;&#1604;&#1575;&#1611;: &#1610;&#1605;&#1603;&#1606;&#1603; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;&#1577; &lrm;<code>$.support</code>&lrm; &#1604;&#1605;&#1593;&#1585;&#1601;&#1577; &#1605;&#1575; &#1575;&#1604;&#1605;&#1610;&#1586;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1583;&#1593;&#1605;&#1607;&#1575; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610;&#1617;&#1548; &#1603;&#1605;&#1575; &#1610;&#1605;&#1603;&#1606;&#1603; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>$.ajax</code>&lrm; &#1604;&#1573;&#1585;&#1587;&#1575;&#1604; &#1591;&#1604;&#1576; AJAX.</p><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1605;&#1606; &#1575;&#1604;&#1570;&#1606; &#1601;&#1589;&#1575;&#1593;&#1583;&#1611;&#1575; &#1587;&#1606;&#1587;&#1578;&#1582;&#1583;&#1605; <code>$</code> &#1576;&#1583;&#1604;&#1611;&#1575; &#1605;&#1606; <code>jQuery</code> &#1601;&#1610; &#1607;&#1584;&#1607; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577; &#1587;&#1593;&#1610;&#1611;&#1575; &#1604;&#1604;&#1575;&#1582;&#1578;&#1589;&#1575;&#1585;. &#1604;&#1575;&#1581;&#1592; &#1571;&#1606;&#1617;&#1607; &#1573;&#1606; &#1575;&#1581;&#1578;&#1608;&#1578; &#1589;&#1601;&#1581;&#1578;&#1603; &#1571;&#1603;&#1579;&#1585; &#1605;&#1606; &#1605;&#1603;&#1578;&#1576;&#1577; &#1608;&#1575;&#1581;&#1583;&#1577;&#1548; &#1601;&#1602;&#1583; &#1610;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1575;&#1604;&#1575;&#1587;&#1605; <code>$</code> &#1605;&#1606; &#1605;&#1603;&#1578;&#1576;&#1577; &#1571;&#1582;&#1585;&#1609;&#1548; &#1605;&#1605;&#1617;&#1575; &#1610;&#1605;&#1606;&#1593; &#1593;&#1605;&#1604; jQuery&#1548; &#1601;&#1573;&#1606; &#1608;&#1575;&#1580;&#1607;&#1578;&#1603; &#1605;&#1588;&#1603;&#1604;&#1577; &#1603;&#1607;&#1584;&#1607;&#1548; &#1580;&#1585;&#1617;&#1576; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <a rel="external nofollow" href="http://api.jquery.com/jQuery.noConflict/"><code>jQuery.noConflict</code></a> &#1602;&#1576;&#1604; &#1578;&#1581;&#1605;&#1610;&#1604; &#1575;&#1604;&#1605;&#1603;&#1578;&#1576;&#1575;&#1578; &#1575;&#1604;&#1571;&#1582;&#1585;&#1609;.</em></p><h2 id="-document-ready-">&rlm;&lrm;$(document).ready()&lrm;</h2><p>&#1602;&#1576;&#1604; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; jQuery &#1604;&#1601;&#1593;&#1604; &#1571;&#1610;&#1617; &#1588;&#1610;&#1569; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&#1548; &#1593;&#1604;&#1610;&#1606;&#1575; &#1575;&#1604;&#1578;&#1571;&#1603;&#1617;&#1583; &#1605;&#1606; &#1603;&#1608;&#1606; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1602;&#1583; &#1576;&#1604;&#1594;&#1578; &#1581;&#1575;&#1604;&#1577;&#1611; &#1578;&#1587;&#1605;&#1581; &#1576;&#1578;&#1593;&#1583;&#1610;&#1604; &#1605;&#1581;&#1578;&#1608;&#1610;&#1575;&#1578;&#1607;&#1575;. &#1610;&#1605;&#1603;&#1606; &#1578;&#1606;&#1601;&#1610;&#1584; &#1584;&#1604;&#1603; &#1601;&#1610; jQuery &#1576;&#1573;&#1581;&#1575;&#1591;&#1577; &#1576;&#1585;&#1606;&#1575;&#1605;&#1580;&#1606;&#1575; &#1590;&#1605;&#1606; &#1583;&#1575;&#1604;&#1617;&#1577; &#1579;&#1605;&#1617; &#1573;&#1605;&#1585;&#1575;&#1585; &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1573;&#1604;&#1609; &lrm;<code>$(document).ready()</code>&lrm;. &#1603;&#1605;&#1575; &#1578;&#1585;&#1609; &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610;&#1548; &#1610;&#1605;&#1603;&#1606; &#1604;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1605;&#1585;&#1617;&#1585;&#1607;&#1575; &#1571;&#1606; &#1578;&#1603;&#1608;&#1606; &#1605;&#1580;&#1607;&#1608;&#1604;&#1577; (&#1576;&#1604;&#1575; &#1575;&#1587;&#1605;):</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$(document).ready(function() {
  console.log( 'ready!' );
});</pre><p><span style="line-height: 1.6;">&#1607;&#1584;&#1575; &#1587;&#1610;&#1572;&#1583;&#1617;&#1610; &#1573;&#1604;&#1609; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1605;&#1585;&#1617;&#1585;&#1606;&#1575;&#1607;&#1575; &#1573;&#1604;&#1609; &lrm;</span><code>.ready()</code><span style="line-height: 1.6;">&lrm; &#1576;&#1593;&#1583; &#1571;&#1606; &#1610;&#1589;&#1576;&#1581; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1606;&#1583; (&#1575;&#1604;&#1589;&#1601;&#1581;&#1577;) &#1580;&#1575;&#1607;&#1586;&#1611;&#1575;. &#1605;&#1575; &#1575;&#1604;&#1584;&#1610; &#1610;&#1581;&#1583;&#1579; &#1607;&#1606;&#1575;&#1567; &#1575;&#1587;&#1578;&#1582;&#1583;&#1605;&#1606;&#1575; &lrm;</span><code>$(document)</code><span style="line-height: 1.6;">&lrm; &#1604;&#1573;&#1606;&#1588;&#1575;&#1569; &#1603;&#1575;&#1574;&#1606; jQuery &#1605;&#1606; </span><code>document</code><span style="line-height: 1.6;"> &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&#1548; &#1579;&#1605;&#1617; &#1575;&#1587;&#1578;&#1583;&#1593;&#1610;&#1606;&#1575; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &lrm;</span><code>.ready()</code><span style="line-height: 1.6;">&lrm; &#1593;&#1604;&#1609; &#1607;&#1584;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1548; &#1605;&#1615;&#1605;&#1585;&#1617;&#1616;&#1585;&#1610;&#1606; &#1573;&#1604;&#1610;&#1607;&#1575; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1585;&#1610;&#1583; &#1578;&#1606;&#1601;&#1610;&#1584;&#1607;&#1575;.</span></p><p>&#1576;&#1605;&#1575; &#1571;&#1606;&#1617;&#1603; &#1587;&#1578;&#1580;&#1583; &#1606;&#1601;&#1587;&#1603; &#1578;&#1615;&#1593;&#1610;&#1583; &#1603;&#1578;&#1575;&#1576;&#1577; &#1607;&#1584;&#1575; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; &#1605;&#1585;&#1575;&#1585;&#1611;&#1575;&#1548; &#1601;&#1573;&#1606;&#1617; jQuery &#1578;&#1602;&#1583;&#1617;&#1605; &#1604;&#1603; &#1591;&#1585;&#1610;&#1602;&#1577;&#1611; &#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1577;&#1611; &#1604;&#1573;&#1606;&#1580;&#1575;&#1586;&#1607;&#1548; &#1573;&#1584; &#1578;&#1602;&#1608;&#1605; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &lrm;<code>$()</code>&lrm; &#1576;&#1605;&#1607;&#1605;&#1617;&#1577; &#1605;&#1615;&#1582;&#1578;&#1604;&#1601;&#1577; &#1593;&#1606;&#1583; &#1573;&#1605;&#1585;&#1575;&#1585; &#1583;&#1575;&#1604;&#1617;&#1577; &#1573;&#1604;&#1610;&#1607;&#1575; &#1576;&#1583;&#1604;&#1611;&#1575; &#1605;&#1606; &#1605;&#1615;&#1581;&#1583;&#1617;&#1616;&#1583; CSS&#1548; &#1608;&#1593;&#1606;&#1583;&#1607;&#1575; &#1578;&#1578;&#1589;&#1585;&#1617;&#1601; &#1608;&#1603;&#1571;&#1606;&#1617;&#1607;&#1575; &#1575;&#1587;&#1605; &#1576;&#1583;&#1610;&#1604;&#1612; &#1604;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>$(document).ready()</code>&lrm;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$(function() {
  console.log( 'ready!' );
});</pre><p><em style="line-height: 1.6;">&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1605;&#1606; &#1575;&#1604;&#1570;&#1606; &#1601;&#1589;&#1575;&#1593;&#1583;&#1611;&#1575;&#1548; &#1587;&#1606;&#1601;&#1578;&#1585;&#1590; &#1571;&#1606;&#1617; &#1575;&#1604;&#1606;&#1617;&#1589;&#1608;&#1589; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1585;&#1583; &#1601;&#1610; &#1607;&#1584;&#1607; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577; &#1605;&#1615;&#1581;&#1575;&#1591;&#1577; &#1576;&#1575;&#1604;&#1593;&#1576;&#1575;&#1585;&#1577; &lrm;<code>$(document).ready(function() { ... });</code>&lrm;&#1548; &#1608;&#1587;&#1606;&#1578;&#1585;&#1603; &#1607;&#1584;&#1607; &#1575;&#1604;&#1593;&#1576;&#1575;&#1585;&#1577; &#1576;&#1594;&#1585;&#1590; &#1575;&#1604;&#1573;&#1610;&#1580;&#1575;&#1586;.</em></p><h2 id="-">&#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585;</h2><p>&#1571;&#1576;&#1587;&#1591; &#1605;&#1575; &#1610;&#1605;&#1603;&#1606; &#1573;&#1606;&#1580;&#1575;&#1586;&#1607; &#1576;&#1600;jQuery &#1578;&#1581;&#1583;&#1610;&#1583; &#1576;&#1593;&#1590; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1579;&#1605;&#1617; &#1601;&#1593;&#1604; &#1588;&#1610;&#1569; &#1605;&#1575; &#1576;&#1607;&#1575;. &#1573;&#1606; &#1603;&#1606;&#1578; &#1578;&#1601;&#1607;&#1605; &#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1575;&#1578; CSS&#1548; &#1601;&#1587;&#1578;&#1580;&#1583; &#1571;&#1606;&#1617; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1576;&#1593;&#1590; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1587;&#1607;&#1604; &#1608;&#1605;&#1576;&#1575;&#1588;&#1585;: &#1604;&#1610;&#1587; &#1593;&#1604;&#1610;&#1603; &#1573;&#1604;&#1575; &#1573;&#1605;&#1585;&#1575;&#1585; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1616;&#1583; &#1575;&#1604;&#1605;&#1606;&#1575;&#1587;&#1576; &#1573;&#1604;&#1609; &lrm;<code>$()</code>&lrm;.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( '#header' ); // &#1581;&#1583;&#1617;&#1583; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1617;&#1584;&#1610; &#1605;&#1615;&#1593;&#1585;&#1617;&#1616;&#1601;&#1607; 'header'
$( 'li' );      // &#1581;&#1583;&#1617;&#1583; &#1603;&#1604; &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1602;&#1608;&#1575;&#1574;&#1605; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;
$( 'ul li' );   // &#1581;&#1583;&#1617;&#1583; &#1603;&#1604; &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1602;&#1608;&#1575;&#1574;&#1605; &#1575;&#1604;&#1605;&#1608;&#1580;&#1608;&#1583;&#1577; &#1601;&#1610; &#1602;&#1608;&#1575;&#1574;&#1605; &#1594;&#1610;&#1585; &#1605;&#1615;&#1585;&#1578;&#1617;&#1576;&#1577;
$( '.person' ); // &#1581;&#1583;&#1617;&#1583; &#1603;&#1604; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1584;&#1575;&#1578; &#1575;&#1604;&#1589;&#1617;&#1606;&#1601; 'person'</pre><p>&#1605;&#1606; &#1575;&#1604;&#1605;&#1607;&#1605;&#1617; &#1571;&#1606; &#1578;&#1601;&#1607;&#1605; &#1571;&#1606;&#1617; &#1571;&#1610;&#1617; &#1578;&#1581;&#1583;&#1610;&#1583; &#1578;&#1615;&#1580;&#1585;&#1610; &#1604;&#1606; &#1610;&#1578;&#1590;&#1605;&#1617;&#1606; &#1573;&#1604;&#1617;&#1575; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1608;&#1575;&#1601;&#1602;&#1577; &#1604;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583; &#1608;&#1575;&#1604;&#1578;&#1610; &#1603;&#1575;&#1606;&#1578; &#1605;&#1608;&#1580;&#1608;&#1583;&#1577; &#1601;&#1610; &#1575;&#1604;&#1604;&#1617;&#1581;&#1592;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1571;&#1580;&#1585;&#1610;&#1578; &#1601;&#1610;&#1607;&#1575; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;&#1548; &#1576;&#1605;&#1593;&#1606;&#1609; &#1571;&#1606;&#1617;&#1603; &#1573;&#1584;&#1575; &#1603;&#1578;&#1576;&#1578; &lrm;<code>var anchors = $( 'a' );</code>&lrm; &#1579;&#1605;&#1617; &#1571;&#1590;&#1601;&#1578; &#1593;&#1606;&#1589;&#1585; <code>&lt;a&gt;</code> &#1573;&#1604;&#1609; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1604;&#1575;&#1581;&#1602;&#1611;&#1575;&#1548; &#1601;&#1604;&#1606; &#1578;&#1581;&#1608;&#1610; <code>anchors</code> &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1580;&#1583;&#1610;&#1583;.</p><h3 id="-jquery">&#1591;&#1585;&#1602; &#1571;&#1582;&#1585;&#1609; &#1604;&#1573;&#1606;&#1588;&#1575;&#1569; &#1603;&#1575;&#1574;&#1606; jQuery</h3><p>&#1576;&#1575;&#1604;&#1573;&#1590;&#1575;&#1601;&#1577; &#1573;&#1604;&#1609; &#1573;&#1605;&#1585;&#1575;&#1585; &#1605;&#1615;&#1581;&#1583;&#1617;&#1583; &#1576;&#1587;&#1610;&#1591; &#1573;&#1604;&#1609; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &lrm;<code>$()</code>&lrm;&#1548; &#1610;&#1605;&#1603;&#1606; &#1573;&#1606;&#1588;&#1575;&#1569; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578; jQuery &#1576;&#1591;&#1585;&#1602; &#1571;&#1582;&#1585;&#1609;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// &#1571;&#1606;&#1588;&#1574; &#1603;&#1575;&#1574;&#1606; jQuery &#1605;&#1606; &#1593;&#1606;&#1589;&#1585; DOM
$( document.body.children[0] );

// &#1571;&#1606;&#1588;&#1574; &#1603;&#1575;&#1574;&#1606; jQuery &#1605;&#1606; &#1602;&#1575;&#1574;&#1605;&#1577; &#1576;&#1593;&#1606;&#1575;&#1589;&#1585; DOM
$( [ window, document ] );

// &#1571;&#1580;&#1585;&#1616; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1576;&#1587;&#1610;&#1575;&#1602; &#1593;&#1606;&#1589;&#1585; DOM
var firstBodyChild = document.body.children[0];
$( 'li', firstBodyChild );

// &#1571;&#1580;&#1585;&#1616; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1590;&#1605;&#1606; &#1578;&#1581;&#1583;&#1610;&#1583; &#1587;&#1575;&#1576;&#1602;
var paragraph = $( 'p' );
$( 'a', paragraph );</pre><h3 id="-">&#1607;&#1604; &#1610;&#1581;&#1578;&#1608;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1575;&#1604;&#1617;&#1584;&#1610; &#1571;&#1580;&#1585;&#1610;&#1578;&#1607; &#1593;&#1604;&#1609; &#1571;&#1610;&#1617;&#1577; &#1593;&#1606;&#1575;&#1589;&#1585;&#1567;</h3><p>&#1578;&#1585;&#1594;&#1576; &#1571;&#1581;&#1610;&#1575;&#1606;&#1611;&#1575; &#1601;&#1610; &#1578;&#1606;&#1601;&#1610;&#1584; &#1576;&#1593;&#1590; &#1575;&#1604;&#1571;&#1608;&#1575;&#1605;&#1585; &#1593;&#1606;&#1583;&#1605;&#1575; &#1610;&#1615;&#1591;&#1575;&#1576;&#1602; &#1578;&#1581;&#1583;&#1610;&#1583;&#1603; &#1593;&#1606;&#1589;&#1585;&#1611;&#1575; &#1571;&#1608; &#1571;&#1603;&#1579;&#1585; &#1601;&#1602;&#1591;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &lrm;<code>$()</code>&lrm; &#1578;&#1615;&#1593;&#1610;&#1583;&#1615; <em>&#1583;&#1608;&#1605;&#1611;&#1575;</em> &#1603;&#1575;&#1574;&#1606; jQuery&#1548; &#1608;&#1607;&#1584;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1583;&#1575;&#1574;&#1605;&#1611;&#1575; &#1589;&#1575;&#1574;&#1576; (truthy)&#1548; &#1608;&#1604;&#1584;&#1575; &#1593;&#1604;&#1610;&#1603; &#1601;&#1581;&#1589; &#1605;&#1581;&#1578;&#1608;&#1609; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1604;&#1605;&#1593;&#1585;&#1601;&#1577; &#1573;&#1606; &#1603;&#1575;&#1606; &#1610;&#1581;&#1608;&#1610; &#1571;&#1610;&#1617;&#1577; &#1593;&#1606;&#1575;&#1589;&#1585;.</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1606;&#1589;&#1617; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1594;&#1610;&#1585; &#1587;&#1604;&#1610;&#1605;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">if ( $( '#nonexistent' ) ) {
  // &#1582;&#1591;&#1571;! &#1575;&#1604;&#1571;&#1608;&#1575;&#1605;&#1585; &#1607;&#1606;&#1575; &#1587;&#1578;&#1615;&#1606;&#1601;&#1617;&#1614;&#1584; &#1583;&#1608;&#1605;&#1611;&#1575;!
}

if ( $( '#nonexistent' ).length &gt; 0 ) {
  // &#1589;&#1581;&#1610;&#1581;! &#1604;&#1606; &#1578;&#1615;&#1606;&#1601;&#1617;&#1584; &#1575;&#1604;&#1571;&#1608;&#1575;&#1605;&#1585; &#1607;&#1606;&#1575; &#1573;&#1604;&#1617;&#1575; &#1573;&#1606; &#1575;&#1581;&#1578;&#1608;&#1578; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1593;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; &#1605;&#1615;&#1593;&#1585;&#1617;&#1601;&#1607; 'nonexistent'
}</pre><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1582;&#1578;&#1589;&#1575;&#1585; &#1607;&#1584;&#1575; &#1575;&#1604;&#1601;&#1581;&#1589; &#1571;&#1603;&#1579;&#1585; &#1576;&#1575;&#1604;&#1575;&#1593;&#1578;&#1605;&#1575;&#1583; &#1593;&#1604;&#1609; &#1603;&#1608;&#1606; <code>0</code> &#1602;&#1610;&#1605;&#1577; &#1582;&#1575;&#1591;&#1574;&#1577; (falsy):</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">if ( $( '#nonexistent' ).length ) {
  // &#1604;&#1606; &#1578;&#1615;&#1606;&#1601;&#1617;&#1584; &#1575;&#1604;&#1571;&#1608;&#1575;&#1605;&#1585; &#1607;&#1606;&#1575; &#1573;&#1604;&#1617;&#1575; &#1573;&#1606; &#1608;&#1580;&#1583; &#1593;&#1606;&#1589;&#1585; &#1605;&#1615;&#1591;&#1575;&#1576;&#1602;
}</pre><h3 id="-">&#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1593;&#1606;&#1575;&#1589;&#1585; &#1605;&#1615;&#1601;&#1585;&#1583;&#1577; &#1605;&#1606; &#1578;&#1581;&#1583;&#1610;&#1583;</h3><p>&#1573;&#1606; &#1603;&#1606;&#1578; &#1578;&#1581;&#1578;&#1575;&#1580; &#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1593;&#1606;&#1589;&#1585; DOM &#1582;&#1575;&#1605; &#1605;&#1606; &#1578;&#1581;&#1583;&#1610;&#1583;&#1548; &#1601;&#1593;&#1604;&#1610;&#1603; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1607;&#1584;&#1575; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1605;&#1606; &#1603;&#1575;&#1574;&#1606; jQuery. &#1604;&#1606;&#1601;&#1578;&#1585;&#1590; &#1605;&#1579;&#1604;&#1611;&#1575; &#1571;&#1606;&#1617;&#1603; &#1578;&#1585;&#1610;&#1583; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;&#1577; <code>value</code> &#1604;&#1603;&#1575;&#1574;&#1606; <code>&lt;input&gt;</code> &#1605;&#1576;&#1575;&#1588;&#1585;&#1577;&#1611;&#1548; &#1593;&#1604;&#1610;&#1603; &#1573;&#1584;&#1606; &#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1593;&#1606;&#1589;&#1585; DOM &#1575;&#1604;&#1582;&#1575;&#1605;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var listItems = $( 'li' );
var rawListItem = listItems[0]; // &#1571;&#1608; listItems.get( 0 )
var html = rawListItem.innerHTML;</pre><p>&#1604;&#1575;&#1581;&#1592; &#1571;&#1606;&#1617;&#1607; &#1604;&#1610;&#1587; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1608;&#1592;&#1575;&#1574;&#1601; jQuery &#1593;&#1604;&#1609; &#1593;&#1606;&#1575;&#1589;&#1585; DOM &#1575;&#1604;&#1582;&#1575;&#1605;&#1548; &#1601;&#1604;&#1606; &#1610;&#1593;&#1605;&#1604; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610;:</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1606;&#1589;&#1617; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1594;&#1610;&#1585; &#1587;&#1604;&#1610;&#1605;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var listItems = $( 'li' );
var rawListItem = listItems[0];
var html = rawListItem.html();
// Object #&lt;HTMLInputElement&gt; has no method 'html'</pre><p>&#1573;&#1606; &#1571;&#1585;&#1583;&#1578; &#1575;&#1604;&#1593;&#1605;&#1604; &#1605;&#1593; &#1593;&#1606;&#1589;&#1585; &#1605;&#1615;&#1601;&#1585;&#1583; &#1601;&#1610; &#1578;&#1581;&#1583;&#1610;&#1583; &#1608;&#1571;&#1585;&#1583;&#1578; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1608;&#1592;&#1575;&#1574;&#1601; jQuery &#1605;&#1593;&#1607;&#1548; &#1601;&#1593;&#1604;&#1610;&#1603; &#1573;&#1606;&#1588;&#1575;&#1569; &#1603;&#1575;&#1574;&#1606; jQuery &#1580;&#1583;&#1610;&#1583; &#1575;&#1606;&#1591;&#1604;&#1575;&#1602;&#1611;&#1575; &#1605;&#1606;&#1607; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &lrm;<code>.eq()</code>&lrm;&#1548; &#1608;&#1573;&#1605;&#1585;&#1575;&#1585; &#1583;&#1604;&#1610;&#1604; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1617;&#1584;&#1610; &#1578;&#1585;&#1610;&#1583;&#1607;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var listItems = $( 'li' );
var secondListItem = listItems.eq( 1 );
secondListItem.remove();</pre><p>&#1580;&#1585;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;<a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/8/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a>&nbsp;(&#1578;&#1571;&#1603;&#1583; &#1605;&#1606; &#1590;&#1594;&#1591; &#1586;&#1585; Run with JS &#1601;&#1610; &#1607;&#1584;&#1575; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1608;&#1603;&#1604; &#1575;&#1604;&#1571;&#1605;&#1579;&#1604;&#1577; &#1575;&#1604;&#1578;&#1575;&#1604;&#1610;&#1577;)</p><h2 id="-">&#1573;&#1606;&#1588;&#1575;&#1569; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1580;&#1583;&#1610;&#1583;&#1577;</h2><p>&#1604;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; <code>$</code> &#1583;&#1608;&#1585;&#1612; &#1579;&#1575;&#1604;&#1579; &#1571;&#1582;&#1610;&#1585;: &#1573;&#1606;&#1588;&#1575;&#1569; &#1593;&#1606;&#1575;&#1589;&#1585; &#1580;&#1583;&#1610;&#1583;&#1577;. &#1573;&#1606; &#1605;&#1585;&#1617;&#1585;&#1578; &#1602;&#1589;&#1575;&#1589;&#1577; HTML &#1573;&#1604;&#1609; <code>$()</code>&lrm;&#1548; &#1601;&#1587;&#1578;&#1615;&#1606;&#1588;&#1574; &#1603;&#1575;&#1574;&#1606;&#1611;&#1575; &#1580;&#1583;&#1610;&#1583;&#1611;&#1575; &#1601;&#1610; &#1575;&#1604;&#1584;&#1617;&#1575;&#1603;&#1585;&#1577;&#1548; &#1576;&#1605;&#1593;&#1606;&#1609; &#1571;&#1606;&#1617; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1610;&#1615;&#1606;&#1588;&#1571; &#1608;&#1604;&#1603;&#1606; &#1604;&#1575; &#1610;&#1615;&#1590;&#1575;&#1601; &#1573;&#1604;&#1609; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1573;&#1604;&#1609; &#1571;&#1606; &#1578;&#1601;&#1593;&#1604; &#1584;&#1604;&#1603; &#1576;&#1606;&#1601;&#1587;&#1603;.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( '&lt;p&gt;' ); // &#1610;&#1615;&#1606;&#1588;&#1574; &#1593;&#1606;&#1589;&#1585; &lt;p&gt; &#1576;&#1604;&#1575; &#1605;&#1581;&#1578;&#1608;&#1609;
$( '&lt;p&gt;Hello!&lt;/p&gt;' ); // &#1610;&#1615;&#1606;&#1588;&#1609; &#1593;&#1606;&#1589;&#1585; &lt;p&gt; &#1601;&#1610;&#1607; &#1606;&#1589;&#1617;
$( '&lt;p class="greet"&gt;Hello!&lt;/p&gt;' ); // &#1610;&#1615;&#1606;&#1588;&#1609; &#1593;&#1606;&#1589;&#1585; &lt;p&gt; &#1601;&#1610;&#1607; &#1606;&#1589;&#1617; &#1608;&#1604;&#1607; &#1589;&#1606;&#1601;</pre><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1571;&#1610;&#1590;&#1611;&#1575; &#1573;&#1606;&#1588;&#1575; &#1593;&#1606;&#1589;&#1585; &#1580;&#1583;&#1610;&#1583; &#1576;&#1573;&#1605;&#1585;&#1575;&#1585; &#1603;&#1575;&#1574;&#1606;&#1613; &#1610;&#1581;&#1608;&#1610; &#1605;&#1593;&#1604;&#1608;&#1605;&#1575;&#1578; &#1578;&#1589;&#1601; &#1603;&#1610;&#1601;&#1610;&#1617;&#1577; &#1573;&#1606;&#1588;&#1575;&#1569; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( '&lt;p&gt;', {
  html: 'Hello!',
  'class': 'greet'
});</pre><p>&#1604;&#1575;&#1581;&#1592; &#1571;&#1606;&#1617;&#1607; &#1610;&#1580;&#1576; &#1571;&#1606; &#1606;&#1615;&#1581;&#1610;&#1591; <code>class</code> &#1576;&#1593;&#1604;&#1575;&#1605;&#1578;&#1610; &#1575;&#1602;&#1578;&#1576;&#1575;&#1587;&#1548; &#1604;&#1571;&#1606;&#1617; <code>class</code> &#1603;&#1604;&#1605;&#1577; &#1605;&#1581;&#1580;&#1608;&#1586;&#1577; &#1601;&#1610; JavaScript&#1548; &#1608;&#1593;&#1583;&#1605; &#1573;&#1581;&#1575;&#1591;&#1578;&#1607;&#1575; &#1576;&#1575;&#1604;&#1593;&#1604;&#1575;&#1605;&#1578;&#1610;&#1606; &#1587;&#1610;&#1587;&#1576;&#1617;&#1576; &#1608;&#1602;&#1608;&#1593; &#1571;&#1582;&#1591;&#1575;&#1569; &#1601;&#1610; &#1576;&#1593;&#1590; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578;. &#1585;&#1575;&#1580;&#1593; <a rel="external nofollow" href="http://api.jquery.com/jQuery/#jQuery2">&#1608;&#1579;&#1575;&#1574;&#1602; jQuery&rlm;</a> &#1604;&#1578;&#1601;&#1575;&#1589;&#1610;&#1604; &#1575;&#1604;&#1582;&#1589;&#1575;&#1574;&#1589; &#1575;&#1604;&#1605;&#1582;&#1578;&#1604;&#1601;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1605;&#1603;&#1606;&#1603; &#1578;&#1590;&#1605;&#1610;&#1606;&#1607;&#1575; &#1601;&#1610; &#1607;&#1584;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;.</p><p>&#1587;&#1606;&#1578;&#1593;&#1585;&#1617;&#1601; &#1603;&#1610;&#1601; &#1606;&#1615;&#1590;&#1610;&#1601; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1601;&#1610; &#1575;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1602;&#1575;&#1583;&#1605; &#1605;&#1606; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577;&#1548; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1588;&#1585;&#1581; &#1575;&#1604;&#1575;&#1606;&#1578;&#1602;&#1575;&#1604; &#1593;&#1576;&#1585; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1608;&#1578;&#1593;&#1583;&#1610;&#1604; &#1605;&#1581;&#1578;&#1608;&#1610;&#1575;&#1578;&#1607;&#1575;.</p><h2 id="-">&#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1578;&#1581;&#1583;&#1610;&#1583;&#1575;&#1578;</h2><p>&#1576;&#1593;&#1583; &#1573;&#1606;&#1588;&#1575;&#1574;&#1603; &#1603;&#1575;&#1574;&#1606; jQuery &#1610;&#1581;&#1608;&#1610; &#1578;&#1581;&#1583;&#1610;&#1583;&#1611;&#1575;&#1548; &#1601;&#1573;&#1606;&#1617;&#1603; &#1594;&#1575;&#1604;&#1576;&#1611;&#1575; &#1605;&#1575; &#1578;&#1585;&#1610;&#1583; &#1601;&#1593;&#1604; &#1588;&#1610;&#1569; &#1605;&#1575; &#1576;&#1607;&#1548; &#1608;&#1602;&#1576;&#1604; &#1584;&#1604;&#1603; &#1593;&#1604;&#1610;&#1603; &#1571;&#1606; &#1578;&#1578;&#1593;&#1585;&#1617;&#1601; &#1593;&#1604;&#1609; &#1571;&#1587;&#1604;&#1608;&#1576; jQuery &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578;.</p><h2 id="-">&#1601;&#1581;&#1589; &#1578;&#1581;&#1583;&#1610;&#1583;</h2><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1605;&#1593;&#1585;&#1601;&#1577; &#1573;&#1606; &#1603;&#1575;&#1606; &#1578;&#1581;&#1583;&#1610;&#1583; &#1605;&#1575; &#1610;&#1615;&#1591;&#1575;&#1576;&#1602; &#1605;&#1593;&#1575;&#1610;&#1610;&#1585; &#1605;&#1615;&#1593;&#1610;&#1617;&#1606;&#1577; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.is()</code>&lrm;. &#1571;&#1603;&#1579;&#1585; &#1575;&#1604;&#1591;&#1617;&#1585;&#1602; &#1588;&#1610;&#1608;&#1593;&#1611;&#1575; &#1604;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1607;&#1584;&#1607; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &#1578;&#1586;&#1608;&#1610;&#1583;&#1607;&#1575; &#1576;&#1605;&#1615;&#1581;&#1583;&#1617;&#1616;&#1583; &#1603;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1613; &#1605;&#1601;&#1585;&#1583; &#1604;&#1607;&#1575;&#1548; &#1608;&#1593;&#1606;&#1583;&#1607;&#1575; &#1578;&#1615;&#1593;&#1610;&#1583; <code>true</code> &#1571;&#1608; <code>false</code> &#1581;&#1587;&#1576; &#1605;&#1615;&#1591;&#1575;&#1576;&#1602;&#1577; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1604;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1616;&#1583;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'li' ).eq( 0 ).is( '.special' ); // false
$( 'li' ).eq( 1 ).is( '.special' ); // true</pre><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1578;&#1605;&#1585;&#1610;&#1585; &#1603;&#1575;&#1574;&#1606; jQuery &#1571;&#1610;&#1590;&#1611;&#1575; &#1573;&#1604;&#1609; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.is()</code>&lrm;&#1548; &#1571;&#1608; &#1581;&#1578;&#1617;&#1609; &#1603;&#1575;&#1574;&#1606; DOM &#1582;&#1575;&#1605;&#1548; &#1571;&#1608; &#1581;&#1578;&#1617;&#1609; &#1583;&#1575;&#1604;&#1617;&#1577; &#1604;&#1573;&#1580;&#1585;&#1575;&#1569; &#1575;&#1582;&#1578;&#1576;&#1575;&#1585; &#1571;&#1603;&#1579;&#1585; &#1578;&#1593;&#1602;&#1610;&#1583;&#1611;&#1575; &#1573;&#1606; &#1604;&#1586;&#1605;. &#1585;&#1575;&#1580;&#1593; <a rel="external nofollow" href="http://api.jquery.com/is/">&#1575;&#1604;&#1608;&#1579;&#1575;&#1574;&#1602;</a> &#1604;&#1605;&#1586;&#1610;&#1583; &#1605;&#1606; &#1575;&#1604;&#1578;&#1617;&#1601;&#1575;&#1589;&#1610;&#1604;.</p><h3 id="-">&#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1602;&#1585;&#1575;&#1569;&#1577; &#1608;&#1575;&#1604;&#1603;&#1578;&#1575;&#1576;&#1577; &#1608;&#1575;&#1604;&#1587;&#1617;&#1585;&#1583; &#1575;&#1604;&#1590;&#1617;&#1605;&#1606;&#1610;&#1617;</h3><p>&#1576;&#1593;&#1583; &#1593;&#1605;&#1604; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;&#1548; &#1578;&#1578;&#1608;&#1601;&#1617;&#1585; &#1608;&#1592;&#1575;&#1574;&#1601; &#1593;&#1583;&#1610;&#1583;&#1577; &#1610;&#1605;&#1603;&#1606;&#1603; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1572;&#1607;&#1575;. &#1578;&#1602;&#1593; &#1607;&#1584;&#1607; &#1575;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; &#1593;&#1605;&#1608;&#1605;&#1611;&#1575; &#1601;&#1610; &#1573;&#1581;&#1583;&#1609; &#1605;&#1580;&#1605;&#1608;&#1593;&#1578;&#1610;&#1606;: &#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1602;&#1585;&#1575;&#1569;&#1577; (getters) &#1608;&#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1603;&#1578;&#1575;&#1576;&#1577; (setters). &#1601;&#1575;&#1604;&#1571;&#1608;&#1604;&#1609; &#1578;&#1593;&#1591;&#1610;&#1606;&#1575; &#1605;&#1593;&#1604;&#1608;&#1605;&#1575;&#1578; &#1593;&#1606; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;&#1548; &#1608;&#1575;&#1604;&#1579;&#1617;&#1575;&#1606;&#1610;&#1577; &#1578;&#1615;&#1594;&#1610;&#1617;&#1585; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1576;&#1588;&#1603;&#1604; &#1605;&#1606; &#1575;&#1604;&#1571;&#1588;&#1603;&#1575;&#1604;. &#1608;&#1601;&#1610; &#1605;&#1593;&#1592;&#1605; &#1575;&#1604;&#1581;&#1575;&#1604;&#1575;&#1578; &#1610;&#1602;&#1578;&#1589;&#1585; &#1593;&#1605;&#1604; &#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1602;&#1585;&#1575;&#1569;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1571;&#1608;&#1604; &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; (&lrm;<code>.text()</code>&lrm; &#1573;&#1581;&#1583;&#1609; &#1575;&#1587;&#1578;&#1579;&#1606;&#1575;&#1569;&#1575;&#1578; &#1607;&#1584;&#1607; &#1575;&#1604;&#1602;&#1575;&#1593;&#1583;&#1577;)&#1563; &#1571;&#1605;&#1617;&#1575; &#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1603;&#1578;&#1575;&#1576;&#1577; &#1601;&#1578;&#1588;&#1605;&#1604; &#1576;&#1593;&#1605;&#1604;&#1607;&#1575; &#1603;&#1604;&#1617; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;&#1548; &#1605;&#1587;&#1578;&#1582;&#1583;&#1605;&#1577;&#1611; &#1605;&#1575; &#1610;&#1615;&#1593;&#1585;&#1601; &#1576;&#1575;&#1604;&#1587;&#1617;&#1585;&#1583; &#1575;&#1604;&#1590;&#1617;&#1605;&#1606;&#1610;&#1617; (implicit iteration).</p><p>&#1605;&#1593;&#1606;&#1609; &#1575;&#1604;&#1587;&#1617;&#1585;&#1583; &#1575;&#1604;&#1590;&#1617;&#1605;&#1606;&#1610;&#1617; &#1571;&#1606;&#1617; jQuery &#1587;&#1578;&#1605;&#1585;&#1617; &#1578;&#1604;&#1602;&#1575;&#1574;&#1610;&#1617;&#1611;&#1575; &#1593;&#1604;&#1609; &#1603;&#1604;&#1617; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1587;&#1578;&#1583;&#1593;&#1610; &#1608;&#1592;&#1610;&#1601;&#1577; &#1603;&#1578;&#1575;&#1576;&#1577; &#1593;&#1604;&#1609; &#1607;&#1584;&#1575; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;&#1548; &#1571;&#1610;&#1617; &#1571;&#1606;&#1617;&#1607; &#1604;&#1610;&#1587; &#1593;&#1604;&#1610;&#1603; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1608;&#1592;&#1610;&#1601;&#1577; &#1593;&#1604;&#1609; &#1603;&#1604;&#1617; &#1593;&#1606;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1576;&#1605;&#1601;&#1585;&#1583;&#1607; &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1585;&#1610;&#1583; &#1601;&#1593;&#1604; &#1588;&#1610;&#1569; &#1593;&#1604;&#1609; &#1603;&#1604; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1578;&#1581;&#1583;&#1610;&#1583; &#1608;&#1575;&#1581;&#1583;&#1613;&#1548; &#1576;&#1604; &#1575;&#1603;&#1578;&#1601;&#1616; &#1576;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1607;&#1584;&#1607; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1606;&#1601;&#1587;&#1607;&#1548; &#1608;&#1587;&#1578;&#1601;&#1607;&#1605; jQuery &#1571;&#1606;&#1617; &#1593;&#1604;&#1610;&#1607;&#1575; &#1578;&#1606;&#1601;&#1610;&#1584;&#1607; &#1593;&#1604;&#1609; &#1603;&#1604;&#1617; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;.</p><p>&#1604;&#1606;&#1601;&#1578;&#1585;&#1590; &#1571;&#1606;&#1617;&#1606;&#1575; &#1606;&#1585;&#1610;&#1583; &#1578;&#1594;&#1610;&#1610;&#1585; &#1606;&#1589;&#1617; HTML &#1601;&#1610; &#1603;&#1604; &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1602;&#1608;&#1575;&#1574;&#1605; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&#1548; &#1608;&#1604;&#1601;&#1593;&#1604; &#1584;&#1604;&#1603; &#1593;&#1604;&#1610;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.html()</code>&lrm; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1602;&#1608;&#1605; &#1576;&#1578;&#1594;&#1610;&#1610;&#1585; &#1606;&#1589;&#1617; HTML &#1601;&#1610; <em>&#1603;&#1604;&#1617;</em> &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1602;&#1608;&#1575;&#1574;&#1605; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1577;.</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'li' ).html( 'New HTML' );</pre><p>&#1580;&#1585;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;<a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/9/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1571;&#1610;&#1590;&#1611;&#1575; &#1573;&#1605;&#1585;&#1575;&#1585; &#1583;&#1575;&#1604;&#1617;&#1577; &#1573;&#1604;&#1609; &#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1603;&#1578;&#1575;&#1576;&#1577; &#1601;&#1610; jQuery&#1548; &#1608;&#1587;&#1578;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1583;&#1577; &#1605;&#1606;&#1607;&#1575; &#1576;&#1575;&#1593;&#1578;&#1576;&#1575;&#1585;&#1607;&#1575; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1580;&#1583;&#1610;&#1583;&#1577;&#1548; &#1608;&#1578;&#1587;&#1578;&#1602;&#1576;&#1604; &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1610;&#1606; &#1575;&#1579;&#1606;&#1610;&#1606;: &#1583;&#1604;&#1610;&#1604; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; (index) &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;&#1548; &#1608;&#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1602;&#1583;&#1610;&#1605;&#1577; &#1604;&#1604;&#1588;&#1617;&#1610;&#1569; &#1575;&#1604;&#1584;&#1610; &#1578;&#1581;&#1575;&#1608;&#1604; &#1578;&#1594;&#1610;&#1610;&#1585;&#1607;&#1548; &#1608;&#1607;&#1584;&#1575; &#1605;&#1615;&#1601;&#1610;&#1583; &#1601;&#1610; &#1581;&#1575;&#1604; &#1575;&#1581;&#1578;&#1580;&#1578; &#1605;&#1593;&#1604;&#1608;&#1605;&#1575;&#1578; &#1593;&#1606; &#1581;&#1575;&#1604;&#1577; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610;&#1617;&#1577; &#1604;&#1578;&#1593;&#1610;&#1610;&#1606; &#1581;&#1575;&#1604;&#1578;&#1607; &#1575;&#1604;&#1580;&#1583;&#1610;&#1583;&#1577; &#1576;&#1588;&#1603;&#1604; &#1589;&#1581;&#1610;&#1581;.</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'li' ).html(function( index, oldHtml ) {
  return oldHtml + '!!!'
});</pre><p>&#1580;&#1585;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1601;&#1610;&nbsp;<a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/10/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><h3 id="-explicit-iteration-">&#1575;&#1604;&#1587;&#1617;&#1585;&#1583; &#1575;&#1604;&#1589;&#1617;&#1585;&#1610;&#1581; (Explicit Iteration)</h3><p>&#1601;&#1610; &#1576;&#1593;&#1590; &#1575;&#1604;&#1571;&#1581;&#1610;&#1575;&#1606;&#1548; &#1604;&#1606; &#1578;&#1604;&#1576;&#1617;&#1610; &#1608;&#1592;&#1575;&#1574;&#1601; jQuery &#1575;&#1604;&#1571;&#1589;&#1604;&#1610;&#1617;&#1577; &#1575;&#1604;&#1605;&#1607;&#1605;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1585;&#1610;&#1583; &#1573;&#1606;&#1580;&#1575;&#1586;&#1607;&#1575; &#1576;&#1583;&#1602;&#1617;&#1577;&#1548; &#1608;&#1587;&#1610;&#1603;&#1608;&#1606; &#1593;&#1604;&#1610;&#1603; &#1581;&#1610;&#1606;&#1607;&#1575; &#1575;&#1604;&#1605;&#1585;&#1608;&#1585; &#1593;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1576;&#1588;&#1603;&#1604; &#1589;&#1585;&#1610;&#1581;&#1548; &#1608;&#1607;&#1584;&#1575; &#1605;&#1575; &#1578;&#1578;&#1610;&#1581;&#1607; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.each()</code>&lrm;. &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610; &#1606;&#1587;&#1578;&#1582;&#1583;&#1605;&#1607;&#1575; &#1604;&#1573;&#1590;&#1575;&#1601;&#1577; &#1608;&#1587;&#1605; <code>&lt;b&gt;</code> &#1601;&#1610; &#1576;&#1583;&#1575;&#1610;&#1577; &#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1602;&#1575;&#1574;&#1605;&#1577;&#1548; &#1610;&#1581;&#1608;&#1610; &#1583;&#1604;&#1610;&#1604; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">$( 'li' ).each(function( index, elem ) {
  // this: &#1593;&#1606;&#1589;&#1585; DOM &#1575;&#1604;&#1582;&#1575;&#1605; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610;
  // index: &#1583;&#1604;&#1610;&#1604; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610; &#1601;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583;
  // elem: &#1593;&#1606;&#1589;&#1585; DOM &#1575;&#1604;&#1582;&#1575;&#1605; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610; (&#1605;&#1579;&#1604; this)
  $( elem ).prepend( '&lt;b&gt;' + index + ': &lt;/b&gt;' );
});</pre><p>&#1580;&#1585;&#1576; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604;&nbsp;<a class="jsbin-embed" rel="external nofollow" href="http://jsbin.com/fopitohami/11/embed?js,console,output">&#1587;&#1575;&#1581;&#1577; &#1575;&#1604;&#1578;&#1617;&#1580;&#1585;&#1576;&#1577;</a></p><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1587;&#1578;&#1604;&#1575;&#1581;&#1592; &#1571;&#1606;&#1617; &#1593;&#1606;&#1589;&#1585; DOM &#1575;&#1604;&#1582;&#1575;&#1605; &#1605;&#1615;&#1578;&#1575;&#1581; &#1590;&#1605;&#1606; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1615;&#1605;&#1585;&#1617;&#1585;&#1607;&#1575; &#1573;&#1604;&#1609; &lrm;<code>.each()</code>&lrm; &#1576;&#1591;&#1585;&#1610;&#1602;&#1578;&#1610;&#1606;: &#1575;&#1604;&#1571;&#1608;&#1604;&#1609; &#1593;&#1576;&#1585; <code>this</code> &#1608;&#1575;&#1604;&#1579;&#1617;&#1575;&#1606;&#1610;&#1577; &#1593;&#1576;&#1585; <code>elem</code>. &#1608;&#1603;&#1605;&#1575; &#1606;&#1575;&#1602;&#1588;&#1606;&#1575; &#1601;&#1610; &#1575;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602; (&#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1575;&#1578; JavaScript)&#1548; &#1601;&#1573;&#1606;&#1617; <code>this</code> &#1603;&#1604;&#1605;&#1577; &#1582;&#1575;&#1589;&#1617;&#1577; &#1601;&#1610; JavaScript &#1578;&#1615;&#1588;&#1610;&#1585; &#1573;&#1604;&#1609; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1615;&#1605;&#1579;&#1617;&#1604; &#1587;&#1610;&#1575;&#1602; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610;&#1617;. &#1608;&#1601;&#1610; jQuery &#1601;&#1573;&#1606;&#1617; <code>this</code> &#1578;&#1615;&#1588;&#1610;&#1585; &#1601;&#1610; &#1605;&#1593;&#1592;&#1605; &#1575;&#1604;&#1581;&#1575;&#1604;&#1575;&#1578; &#1573;&#1604;&#1609; &#1593;&#1606;&#1589;&#1585; DOM &#1575;&#1604;&#1582;&#1575;&#1605; &#1575;&#1604;&#1617;&#1584;&#1610; &#1578;&#1593;&#1605;&#1604; &#1593;&#1604;&#1610;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610;&#1617;&#1577;. &#1604;&#1584;&#1575; &#1601;&#1573;&#1606;&#1617;&#1607;&#1575; &#1578;&#1615;&#1588;&#1610;&#1585; &#1601;&#1610; &#1581;&#1575;&#1604;&#1577; &lrm;<code>.each()</code>&lrm; &#1573;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610;&#1617; &#1601;&#1610; &#1605;&#1580;&#1605;&#1608;&#1593;&#1577; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1587;&#1585;&#1583;&#1607;&#1575;.</em></p><h3 id="-chaining-">&#1575;&#1604;&#1587;&#1617;&#1614;&#1604;&#1587;&#1614;&#1604;&#1577; (Chaining)</h3><p>&#1605;&#1606; &#1571;&#1603;&#1579;&#1585; &#1575;&#1604;&#1571;&#1605;&#1608;&#1585; &#1601;&#1575;&#1574;&#1583;&#1577;&#1611; &#1601;&#1610; jQuery &#1573;&#1605;&#1603;&#1575;&#1606;&#1610;&#1617;&#1577; "&#1587;&#1614;&#1604;&#1587;&#1614;&#1604;&#1577;" &#1575;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; &#1605;&#1593;&#1611;&#1575;. &#1607;&#1584;&#1575; &#1610;&#1593;&#1606;&#1610; &#1571;&#1606;&#1617; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1587;&#1604;&#1587;&#1616;&#1604;&#1577; &#1605;&#1606; &#1575;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; &#1593;&#1604;&#1609; &#1578;&#1581;&#1583;&#1610;&#1583;&#1613; &#1605;&#1575; &#1583;&#1608;&#1606; &#1575;&#1604;&#1581;&#1575;&#1580;&#1577; &#1604;&#1573;&#1593;&#1575;&#1583;&#1577; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1571;&#1608; &#1581;&#1601;&#1592;&#1607; &#1601;&#1610; &#1605;&#1578;&#1594;&#1610;&#1617;&#1585;. &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1581;&#1578;&#1617;&#1609; &#1573;&#1606;&#1588;&#1575;&#1569; &#1578;&#1581;&#1583;&#1610;&#1583;&#1575;&#1578; &#1580;&#1583;&#1610;&#1583;&#1577; &#1576;&#1606;&#1575;&#1569; &#1593;&#1604;&#1609; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602;&#1548; &#1583;&#1608;&#1606; &#1603;&#1587;&#1585; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$( 'li' )
  .click(function() {
    $( this ).addClass( 'clicked' );
  })
  .find( 'span' )
    .attr( 'title', 'Hover over me' );</pre><p>&#1575;&#1604;&#1571;&#1605;&#1585; &#1605;&#1605;&#1603;&#1606; &#1604;&#1571;&#1606;&#1617; &#1603;&#1604; &#1583;&#1575;&#1604;&#1617;&#1577; &#1603;&#1578;&#1575;&#1576;&#1577; (setter) &#1601;&#1610; jQuery &#1578;&#1615;&#1593;&#1610;&#1583; &#1575;&#1604;&#1578;&#1617;&#1581;&#1583;&#1610;&#1583; &#1575;&#1604;&#1584;&#1610; &#1575;&#1615;&#1587;&#1578;&#1583;&#1593;&#1610;&#1578; &#1604;&#1578;&#1593;&#1605;&#1604; &#1593;&#1604;&#1610;&#1607;. &#1608;&#1607;&#1584;&#1575; &#1571;&#1605;&#1585; &#1593;&#1592;&#1610;&#1605; &#1575;&#1604;&#1601;&#1575;&#1574;&#1583;&#1577;&#1548; &#1581;&#1578;&#1617;&#1609; &#1571;&#1606;&#1617; &#1605;&#1603;&#1578;&#1576;&#1575;&#1578; &#1603;&#1579;&#1610;&#1585;&#1577; &#1575;&#1593;&#1578;&#1605;&#1583;&#1578;&#1607; &#1578;&#1571;&#1579;&#1617;&#1585;&#1611;&#1575; &#1576;&#1600;jQuery. &#1608;&#1604;&#1603;&#1606; &#1610;&#1580;&#1576; &#1575;&#1604;&#1581;&#1584;&#1585; &#1593;&#1606;&#1583; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605;&#1607;. &#1601;&#1575;&#1604;&#1587;&#1617;&#1604;&#1575;&#1587;&#1604; &#1575;&#1604;&#1591;&#1617;&#1608;&#1610;&#1604;&#1577; &#1578;&#1580;&#1593;&#1604; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1577; &#1589;&#1593;&#1576; &#1575;&#1604;&#1602;&#1585;&#1575;&#1569;&#1577; &#1608;&#1575;&#1604;&#1578;&#1617;&#1593;&#1583;&#1610;&#1604; &#1608;&#1575;&#1604;&#1578;&#1606;&#1602;&#1610;&#1581; &#1604;&#1575; &#1602;&#1575;&#1593;&#1583;&#1577; &#1608;&#1575;&#1590;&#1581;&#1577; &#1578;&#1601;&#1585;&#1590; &#1591;&#1608;&#1604;&#1611;&#1575; &#1605;&#1606;&#1575;&#1587;&#1576;&#1611;&#1575; &#1604;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577;&#1548; &#1608;&#1604;&#1603;&#1606; &#1581;&#1578;&#1617;&#1609; &#1575;&#1604;&#1587;&#1604;&#1575;&#1587;&#1604; &#1575;&#1604;&#1602;&#1589;&#1610;&#1585;&#1577; &#1602;&#1583; &#1578;&#1581;&#1578;&#1575;&#1580; &#1573;&#1604;&#1609; &#1573;&#1593;&#1575;&#1583;&#1577; &#1575;&#1604;&#1589;&#1617;&#1610;&#1575;&#1594;&#1577; &#1578;&#1587;&#1607;&#1610;&#1604;&#1611;&#1575; &#1604;&#1602;&#1585;&#1575;&#1569;&#1578;&#1607;&#1575;.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var listItems = $( 'li' );
var spans = listItems.find( 'span' );

listItems
  .click(function() {
    $( this ).addClass( 'clicked' );
  });

spans.attr( 'title', 'Hover over me' );</pre><h2 id="-">&#1582;&#1575;&#1578;&#1605;&#1577;</h2><p>&#1604;&#1583;&#1610;&#1606;&#1575; &#1575;&#1604;&#1570;&#1606; &#1605;&#1593;&#1604;&#1608;&#1605;&#1575;&#1578; &#1605;&#1605;&#1578;&#1575;&#1586;&#1577; &#1593;&#1606; &#1578;&#1601;&#1575;&#1589;&#1610;&#1604; &#1593;&#1605;&#1604; jQuery&#1563; &#1608;&#1587;&#1606;&#1587;&#1578;&#1593;&#1585;&#1590; &#1601;&#1610; &#1575;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1602;&#1575;&#1583;&#1605; &#1603;&#1610;&#1601; &#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1578;&#1591;&#1576;&#1610;&#1602; &#1607;&#1584;&#1607; &#1575;&#1604;&#1605;&#1593;&#1604;&#1608;&#1605;&#1575;&#1578; &#1604;&#1573;&#1606;&#1580;&#1575;&#1586; &#1571;&#1588;&#1610;&#1575;&#1569; &#1581;&#1602;&#1610;&#1602;&#1610;&#1617;&#1577; &#1576;&#1607;&#1575;!</p><h2 id="-">&#1605;&#1589;&#1575;&#1583;&#1585; &#1573;&#1590;&#1575;&#1601;&#1610;&#1577;</h2><ul><li><a rel="external nofollow" href="http://api.jquery.com/">&#1608;&#1579;&#1575;&#1574;&#1602; &#1575;&#1604;&#1608;&#1575;&#1580;&#1607;&#1577; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1577; &#1604;&#1600;jQuery</a></li><li><a rel="external nofollow" href="http://api.jquery.com/category/selectors/">&#1608;&#1579;&#1575;&#1574;&#1602; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583;&#1575;&#1578;</a></li></ul><p><span style="line-height: 22.3999996185303px;">&#1578;&#1585;&#1580;&#1605;&#1577; (&#1576;&#1588;&#1610;&#1569; &#1605;&#1606; &#1575;&#1604;&#1578;&#1589;&#1585;&#1601;)&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1579;&#1575;&#1606;&#1610;&nbsp;&#1605;&#1606; &#1587;&#1604;&#1587;&#1604;&#1577; &nbsp;</span><a style="line-height: 22.3999996185303px;" rel="external nofollow" href="http://jqfundamentals.com/">jQuery Fundamentals</a><span style="line-height: 22.3999996185303px;">&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1605;&#1572;&#1604;&#1617;&#1601;&#1578;&#1607;&#1575;&nbsp;Rebecca Murphey.</span></p>
]]></description><guid isPermaLink="false">60</guid><pubDate>Sun, 12 Apr 2015 08:28:00 +0000</pubDate></item><item><title>&#x623;&#x633;&#x627;&#x633;&#x64A;&#x651;&#x627;&#x62A; &#x62C;&#x627;&#x641;&#x627;&#x633;&#x643;&#x631;&#x64A;&#x628;&#x62A;  &#x648;&#x627;&#x644;&#x623;&#x62E;&#x637;&#x627;&#x621; &#x627;&#x644;&#x634;&#x651;&#x627;&#x626;&#x639;&#x629; &#x627;&#x644;&#x651;&#x62A;&#x64A; &#x64A;&#x631;&#x62A;&#x643;&#x628;&#x647;&#x627; &#x627;&#x644;&#x645;&#x628;&#x62A;&#x62F;&#x626;&#x648;&#x646;</title><link>https://academy.hsoub.com/programming/javascript/jquery/%D8%A3%D8%B3%D8%A7%D8%B3%D9%8A%D9%91%D8%A7%D8%AA-%D8%AC%D8%A7%D9%81%D8%A7%D8%B3%D9%83%D8%B1%D9%8A%D8%A8%D8%AA-%D9%88%D8%A7%D9%84%D8%A3%D8%AE%D8%B7%D8%A7%D8%A1-%D8%A7%D9%84%D8%B4%D9%91%D8%A7%D8%A6%D8%B9%D8%A9-%D8%A7%D9%84%D9%91%D8%AA%D9%8A-%D9%8A%D8%B1%D8%AA%D9%83%D8%A8%D9%87%D8%A7-%D8%A7%D9%84%D9%85%D8%A8%D8%AA%D8%AF%D8%A6%D9%88%D9%86-r59/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_04/javascript-101_480x300.png.6555710ddfa3975b6458bce7d6cfb3df.png" /></p>
<p>&#1576;&#1615;&#1606;&#1610;&#1578; jQuery &#1593;&#1604;&#1609; &#1604;&#1594;&#1577; &#1580;&#1575;&#1601;&#1575;&#1587;&#1603;&#1585;&#1610;&#1576;&#1578;&#1548; &#1608;&#1607;&#1610; &#1604;&#1594;&#1577;&#1612; &#1594;&#1606;&#1610;&#1617;&#1577; &#1608;&#1602;&#1608;&#1610;&#1617;&#1577; &#1601;&#1610; &#1581;&#1583;&#1617; &#1584;&#1575;&#1578;&#1607;&#1575;. &#1610;&#1615;&#1594;&#1591;&#1617;&#1610; &#1607;&#1584;&#1575; &#1575;&#1604;&#1583;&#1617;&#1585;&#1587; &#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1575;&#1578; &#1604;&#1594;&#1577; &#1580;&#1575;&#1601;&#1575; &#1587;&#1603;&#1585;&#1610;&#1576;&#1578;&#1548; &#1608;&#1576;&#1593;&#1590; &#1575;&#1604;&#1571;&#1582;&#1591;&#1575;&#1569; &#1575;&#1604;&#1588;&#1617;&#1575;&#1574;&#1593;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1585;&#1578;&#1603;&#1576;&#1607;&#1575; &#1575;&#1604;&#1605;&#1576;&#1578;&#1583;&#1574;&#1608;&#1606; &#1576;&#1607;&#1575;. &#1610;&#1615;&#1601;&#1610;&#1583; &#1607;&#1584;&#1575; &#1575;&#1604;&#1583;&#1617;&#1585;&#1587; &#1575;&#1604;&#1602;&#1575;&#1583;&#1605;&#1610;&#1606; &#1575;&#1604;&#1580;&#1583;&#1583; &#1573;&#1604;&#1609; &#1593;&#1575;&#1604;&#1605; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1577;&#1548; &#1608;&#1610;&#1601;&#1610;&#1583; &#1571;&#1610;&#1590;&#1611;&#1575; &#1575;&#1604;&#1605;&#1576;&#1585;&#1605;&#1580;&#1610;&#1606; &#1576;&#1604;&#1594;&#1575;&#1578; &#1571;&#1582;&#1585;&#1609; &#1575;&#1604;&#1617;&#1584;&#1610;&#1606; &#1604;&#1605; &#1610;&#1587;&#1576;&#1602; &#1604;&#1607;&#1605; &#1575;&#1604;&#1575;&#1591;&#1617;&#1604;&#1575;&#1593; &#1593;&#1604;&#1609; &#1575;&#1604;&#1580;&#1608;&#1575;&#1606;&#1576; &#1575;&#1604;&#1605;&#1605;&#1610;&#1617;&#1586;&#1577; &#1604;&#1600;JavaScript.</p><p>&#1601;&#1610;&#1605;&#1575; &#1610;&#1604;&#1610; &#1576;&#1585;&#1606;&#1575;&#1605;&#1580; JavaScript &#1576;&#1587;&#1610;&#1591; &#1610;&#1615;&#1590;&#1610;&#1601; &#1585;&#1587;&#1575;&#1604;&#1577;&#1611; &#1573;&#1604;&#1609; &#1589;&#1601;&#1581;&#1577; &#1608;&#1610;&#1576;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">// &#1571;&#1606;&#1588;&#1574; &#1583;&#1575;&#1604;&#1617;&#1577; &#1604;&#1573;&#1604;&#1602;&#1575;&#1569; &#1575;&#1604;&#1578;&#1617;&#1581;&#1610;&#1577; &#1593;&#1604;&#1609; &#1588;&#1582;&#1589;
// &#1608;&#1571;&#1587;&#1606;&#1583;&#1607;&#1575; &#1573;&#1604;&#1609; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; `greet`
var greet = function( person, message ) {
  var greeting = 'Hello, ' + person + '!';
  log( greeting + ' ' + message );
};

// &#1575;&#1587;&#1578;&#1582;&#1583;&#1605; &#1575;&#1604;&#1583;&#1575;&#1604;&#1617;&#1577; &#1604;&#1578;&#1581;&#1610;&#1617;&#1577; Jory&#1548; &#1576;&#1573;&#1605;&#1585;&#1575;&#1585; &#1575;&#1587;&#1605;&#1607;&#1575; &#1608;&#1585;&#1587;&#1575;&#1604;&#1577; &#1575;&#1604;&#1578;&#1617;&#1581;&#1610;&#1617;&#1577;
greet( 'Jory', 'Welcome to JavaScript' );

// &#1575;&#1587;&#1578;&#1582;&#1583;&#1605; &#1575;&#1604;&#1583;&#1575;&#1604;&#1617;&#1577; &#1604;&#1578;&#1581;&#1610;&#1617;&#1577; Rebecca&#1548; &#1576;&#1573;&#1605;&#1585;&#1575;&#1585; &#1575;&#1587;&#1605;&#1607;&#1575; &#1608;&#1585;&#1587;&#1575;&#1604;&#1577; &#1605;&#1582;&#1578;&#1604;&#1601;&#1577;
greet( 'Rebecca', 'Thanks for joining us' );</pre><p><em>&#1605;&#1615;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1587;&#1575;&#1576;&#1602;&#1548; &#1575;&#1587;&#1578;&#1582;&#1583;&#1605;&#1606;&#1575; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; <code>log</code>. &#1608;&#1607;&#1610; &#1583;&#1575;&#1604;&#1617;&#1577; &#1605;&#1615;&#1587;&#1575;&#1593;&#1616;&#1583;&#1577; &#1605;&#1578;&#1608;&#1601;&#1617;&#1585;&#1577; &#1601;&#1610; &#1575;&#1604;&#1571;&#1605;&#1579;&#1604;&#1577; &#1601;&#1610; &#1607;&#1584;&#1607; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577; &#1601;&#1602;&#1591;&#1548; &#1608;&#1604;&#1610;&#1587;&#1578; &#1605;&#1578;&#1608;&#1601;&#1617;&#1585;&#1577; &#1578;&#1604;&#1602;&#1575;&#1574;&#1610;&#1617;&#1611;&#1575; &#1601;&#1610; JavaScript&#1548; &#1610;&#1605;&#1603;&#1606; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <code>log</code> &#1601;&#1610; &#1605;&#1581;&#1585;&#1617;&#1585; &#1575;&#1604;&#1606;&#1617;&#1589;&#1608;&#1589; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1577; &#1601;&#1610; &#1607;&#1584;&#1607; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577;&#1548; &#1608;&#1604;&#1603;&#1606; &#1587;&#1578;&#1581;&#1578;&#1575;&#1580; &#1573;&#1604;&#1609; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <code>console.log</code> &#1605;&#1581;&#1604;&#1617;&#1607;&#1575; &#1601;&#1610; &#1575;&#1604;&#1606;&#1617;&#1589;&#1608;&#1589; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1577; &#1582;&#1575;&#1585;&#1580; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577;&#1548; &#1608;&#1593;&#1606;&#1583;&#1607;&#1575; &#1587;&#1578;&#1615;&#1591;&#1576;&#1593; &#1606;&#1578;&#1575;&#1574;&#1580; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; &#1573;&#1604;&#1609; &#1591;&#1585;&#1601;&#1610;&#1617;&#1577; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581; &#1575;&#1604;&#1617;&#1584;&#1610; &#1578;&#1587;&#1578;&#1593;&#1605;&#1604;&#1607;.</em></p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">// create a function that will greet a person,
// and assign the function to the `greet` variable
var greet = function( person, message ) {
  var greeting = 'Hello, ' + person + '!';
  log( greeting + ' ' + message );
};

// use the function to greet Jory, passing in her
// name and the message we want to use
greet( 'Jory', 'Welcome to JavaScript' );

// use the function to greet Rebecca, passing in her
// name and a different message
greet( 'Rebecca', 'Thanks for joining us' );</pre><p><a rel="external nofollow" href="http://jsbin.com/giqudi/3/edit?html,js,output">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a><br><script src="http://static.jsbin.com/js/embed.js"></script></p><p>&#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1587;&#1575;&#1576;&#1602; &#1610;&#1593;&#1585;&#1590; &#1606;&#1578;&#1610;&#1580;&#1577; &#1578;&#1606;&#1601;&#1610;&#1584; &#1575;&#1604;&#1606;&#1617;&#1589; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1590;&#1605;&#1606; &#1602;&#1587;&#1605; Console&#1548; &#1610;&#1605;&#1603;&#1606;&#1603; &#1573;&#1593;&#1575;&#1583;&#1577; &#1590;&#1576;&#1591; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1586;&#1585; Clear &#1579;&#1605;&#1617; &#1578;&#1593;&#1583;&#1610;&#1604; &#1575;&#1604;&#1606;&#1589;&#1617; &#1573;&#1606; &#1585;&#1594;&#1576;&#1578; &#1576;&#1575;&#1604;&#1578;&#1580;&#1585;&#1576;&#1577; &#1608;&#1573;&#1593;&#1575;&#1583;&#1577; &#1578;&#1606;&#1601;&#1610;&#1584;&#1607; &#1576;&#1606;&#1602;&#1585; Run. &#1604;&#1575; &#1576;&#1571;&#1587; &#1573;&#1606; &#1576;&#1583;&#1578; &#1576;&#1593;&#1590; &#1575;&#1604;&#1571;&#1588;&#1610;&#1575;&#1569; &#1594;&#1610;&#1585; &#1605;&#1601;&#1607;&#1608;&#1605;&#1577; &#1575;&#1604;&#1570;&#1606;&#1563; &#1601;&#1601;&#1610; &#1575;&#1604;&#1601;&#1602;&#1585;&#1575;&#1578; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610;&#1577; &#1587;&#1606;&#1591;&#1617;&#1604;&#1593; &#1593;&#1604;&#1609; &#1605;&#1601;&#1575;&#1607;&#1610;&#1605; &#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1608;&#1575;&#1604;&#1583;&#1608;&#1575;&#1604;&#1617; &#1608;&#1575;&#1604;&#1605;&#1603;&#1608;&#1617;&#1606;&#1575;&#1578; &#1575;&#1604;&#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1577; &#1575;&#1604;&#1571;&#1582;&#1585;&#1609; &#1604;&#1600;JavaScript.</p><h2 id="-">&#1605;&#1604;&#1575;&#1581;&#1592;&#1577; &#1593;&#1606; &#1575;&#1604;&#1578;&#1593;&#1604;&#1610;&#1602;&#1575;&#1578;</h2><p>&#1578;&#1601;&#1610;&#1583; &#1575;&#1604;&#1578;&#1617;&#1593;&#1604;&#1610;&#1602;&#1575;&#1578; &#1601;&#1610; &#1588;&#1585;&#1581; &#1605;&#1575; &#1610;&#1601;&#1593;&#1604;&#1607; &#1603;&#1604; &#1580;&#1586;&#1569; &#1605;&#1606; &#1575;&#1604;&#1606;&#1589;&#1617; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1548; &#1608;&#1604;&#1575; &#1578;&#1572;&#1579;&#1617;&#1585; &#1575;&#1604;&#1578;&#1593;&#1604;&#1610;&#1602;&#1575;&#1578; &#1601;&#1610; &#1593;&#1605;&#1604; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580; &#1593;&#1604;&#1609; &#1575;&#1604;&#1573;&#1591;&#1604;&#1575;&#1602;. &#1576;&#1593;&#1590; &#1575;&#1604;&#1605;&#1615;&#1576;&#1585;&#1605;&#1580;&#1610;&#1606; &#1610;&#1581;&#1576;&#1617;&#1608;&#1606; &#1575;&#1604;&#1573;&#1603;&#1579;&#1575;&#1585; &#1605;&#1606; &#1575;&#1604;&#1578;&#1593;&#1604;&#1610;&#1602;&#1575;&#1578; &#1601;&#1610; &#1576;&#1585;&#1575;&#1605;&#1580;&#1607;&#1605;&#1548; &#1576;&#1610;&#1606;&#1605;&#1575; &#1610;&#1601;&#1590;&#1617;&#1604; &#1570;&#1582;&#1585;&#1608;&#1606; &#1603;&#1578;&#1575;&#1576;&#1578;&#1607;&#1575; &#1601;&#1602;&#1591; &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1603;&#1608;&#1606; &#1576;&#1593;&#1590; &#1575;&#1604;&#1571;&#1580;&#1586;&#1575;&#1569; &#1605;&#1606; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; &#1594;&#1575;&#1605;&#1590;&#1577; &#1608;&#1604;&#1575; &#1578;&#1578;&#1590;&#1617;&#1581; &#1576;&#1587;&#1607;&#1608;&#1604;&#1577;.</p><p>&#1578;&#1587;&#1605;&#1581; JavaScript &#1576;&#1606;&#1608;&#1593;&#1610;&#1606; &#1605;&#1606; &#1575;&#1604;&#1578;&#1593;&#1604;&#1610;&#1602;&#1575;&#1578;: &#1605;&#1601;&#1585;&#1583;&#1577; &#1575;&#1604;&#1587;&#1617;&#1591;&#1585;&#1548; &#1608;&#1605;&#1578;&#1593;&#1583;&#1617;&#1583;&#1577; &#1575;&#1604;&#1587;&#1617;&#1591;&#1608;&#1585;&#1548; &#1608;&#1610;&#1576;&#1583;&#1571; &#1575;&#1604;&#1588;&#1617;&#1603;&#1604; &#1575;&#1604;&#1571;&#1608;&#1617;&#1604; &#1576;&#1575;&#1604;&#1581;&#1585;&#1601;&#1610;&#1606; <code>//</code>&#1563; &#1576;&#1610;&#1606;&#1605;&#1575; &#1610;&#1576;&#1583;&#1571; &#1575;&#1604;&#1579;&#1617;&#1575;&#1606;&#1610; &#1576;&#1575;&#1604;&#1581;&#1585;&#1601;&#1610;&#1606; &lrm;<code>/*</code>&lrm; &#1608;&#1610;&#1606;&#1578;&#1607;&#1610; &#1576;&#1600;&lrm;<code>*/</code>&lrm;.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">// &#1607;&#1584;&#1575; &#1578;&#1593;&#1604;&#1610;&#1602; &#1605;&#1615;&#1601;&#1585;&#1583; &#1575;&#1604;&#1587;&#1617;&#1591;&#1585;
var foo;

/*
  &#1607;&#1584;&#1575; &#1578;&#1593;&#1604;&#1610;&#1602;&#1612; &#1605;&#1578;&#1593;&#1583;&#1617;&#1583; &#1575;&#1604;&#1587;&#1617;&#1591;&#1608;&#1585;
  &#1610;&#1605;&#1603;&#1606; &#1571;&#1606; &#1610;&#1605;&#1578;&#1583;&#1617; &#1593;&#1604;&#1609; &#1571;&#1603;&#1579;&#1585; &#1605;&#1606; &#1587;&#1591;&#1585;&#1548; &#1603;&#1605;&#1575; &#1578;&#1585;&#1609;.
 */</pre><p>&#1610;&#1605;&#1603;&#1606; &#1571;&#1610;&#1590;&#1611;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1578;&#1617;&#1593;&#1604;&#1610;&#1602;&#1575;&#1578; &#1605;&#1578;&#1593;&#1583;&#1617;&#1583;&#1577; &#1575;&#1604;&#1587;&#1617;&#1591;&#1608;&#1585; &#1605;&#1615;&#1590;&#1605;&#1617;&#1606;&#1577; &#1590;&#1605;&#1606; &#1587;&#1591;&#1585;&#1613; &#1605;&#1606; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function cornify( unicorns /* &#1593;&#1583;&#1583; &#1589;&#1581;&#1610;&#1581; */, rainbows /* &#1593;&#1583;&#1583; &#1589;&#1581;&#1610;&#1581; */ ) {

}</pre><h2 id="-javascript">&#1575;&#1604;&#1605;&#1603;&#1608;&#1617;&#1606;&#1575;&#1578; &#1575;&#1604;&#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1577; &#1604;&#1600;JavaScript</h2><h3 id="-variables-">&#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1616;&#1585;&#1575;&#1578; (Variables)</h3><p>&#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1607;&#1610; &#1575;&#1604;&#1591;&#1617;&#1585;&#1610;&#1602;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1582;&#1586;&#1617;&#1606; &#1576;&#1607;&#1575; &#1575;&#1604;&#1602;&#1610;&#1605; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1585;&#1610;&#1583; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605;&#1607;&#1575; &#1601;&#1610; &#1608;&#1602;&#1578; &#1604;&#1575;&#1581;&#1602;&#1613;. &#1610;&#1605;&#1603;&#1606; &#1571;&#1606; &#1578;&#1603;&#1608;&#1606; &#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1593;&#1604;&#1609; &#1593;&#1583;&#1617;&#1577; &#1571;&#1606;&#1608;&#1575;&#1593; &#1605;&#1606; &#1606;&#1589;&#1608;&#1589;&#1613; &#1571;&#1608; &#1571;&#1593;&#1583;&#1575;&#1583; &#1571;&#1608; &#1576;&#1610;&#1575;&#1606;&#1575;&#1578;&#1613; &#1571;&#1582;&#1585;&#1609; &#1603;&#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578; &#1608;&#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578;&#1548; &#1571;&#1608; &#1581;&#1578;&#1609; &#1606;&#1589;&#1608;&#1589;&#1611;&#1575; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617;&#1577; (&#1576;&#1589;&#1608;&#1585;&#1577; &#1583;&#1575;&#1604;&#1617;&#1577; &#1605;&#1615;&#1582;&#1586;&#1617;&#1606;&#1577; &#1601;&#1610; &#1605;&#1578;&#1594;&#1610;&#1617;&#1585;). &#1610;&#1615;&#1589;&#1585;&#1617;&#1581; &#1593;&#1606; &#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585; &#1576;&#1580;&#1605;&#1604;&#1577; <code>var</code>:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var myName = 'Rebecca';</pre><p>&#1610;&#1605;&#1603;&#1606; &#1575;&#1582;&#1578;&#1610;&#1575;&#1585; &#1571;&#1610; &#1575;&#1587;&#1605; &#1604;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585; &#1576;&#1588;&#1585;&#1591; &#1571;&#1604;&#1617;&#1575; &#1610;&#1576;&#1583;&#1571; &#1575;&#1604;&#1575;&#1587;&#1605; &#1576;&#1585;&#1602;&#1605;&#1613; &#1608;&#1571;&#1604;&#1617;&#1575; &#1610;&#1581;&#1608;&#1610; &#1573;&#1588;&#1575;&#1585;&#1577; &#1575;&#1604;&#1606;&#1617;&#1575;&#1602;&#1589; "-".</p><p>&#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1575;&#1604;&#1578;&#1617;&#1589;&#1585;&#1610;&#1581; &#1593;&#1606; &#1605;&#1578;&#1594;&#1610;&#1617;&#1585; &#1608;&#1575;&#1581;&#1583;&#1613; &#1601;&#1610; &#1603;&#1604;&#1617; &#1580;&#1605;&#1604;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var a = 1;
var b = 'two';</pre><p>&#1571;&#1608; &#1575;&#1604;&#1578;&#1617;&#1589;&#1585;&#1610;&#1581; &#1593;&#1606; &#1593;&#1583;&#1617;&#1577; &#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1601;&#1610; &#1580;&#1605;&#1604;&#1577; &#1608;&#1575;&#1581;&#1583;&#1577; &#1576;&#1601;&#1589;&#1604;&#1607;&#1575; &#1576;&#1601;&#1608;&#1575;&#1589;&#1604; &#1604;&#1575;&#1578;&#1610;&#1606;&#1610;&#1617;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var a = 1,
    b = 'two';</pre><p>&#1576;&#1593;&#1583; &#1573;&#1587;&#1606;&#1575;&#1583; &#1602;&#1610;&#1605;&#1577; &#1604;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1548; &#1610;&#1605;&#1603;&#1606; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1607;&#1584;&#1575; &#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585; &#1604;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1605;&#1615;&#1582;&#1586;&#1617;&#1606;&#1577; &#1601;&#1610;&#1607;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">log( myName ); // &#1610;&#1591;&#1576;&#1593; 'Rebecaa'</pre><p>&#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1605;&#1603;&#1608;&#1617;&#1606; &#1590;&#1585;&#1608;&#1585;&#1610;&#1617; &#1604;&#1604;&#1575;&#1604;&#1578;&#1586;&#1575;&#1605; &#1576;&#1605;&#1576;&#1583;&#1571; "&#1604;&#1575; &#1578;&#1603;&#1585;&#1617;&#1585; &#1606;&#1601;&#1587;&#1603;" (Don't Repeat Yourself)&#1548; &#1601;&#1573;&#1584;&#1575; &#1571;&#1585;&#1583;&#1578; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1602;&#1610;&#1605;&#1577; &#1608;&#1575;&#1581;&#1583;&#1577; &#1571;&#1603;&#1579;&#1585; &#1605;&#1606; &#1605;&#1585;&#1617;&#1577;&#1548; &#1601;&#1575;&#1604;&#1594;&#1575;&#1604;&#1576; &#1571;&#1606;&#1617;&#1603; &#1578;&#1585;&#1594;&#1576; &#1601;&#1610; &#1578;&#1582;&#1586;&#1610;&#1606;&#1607;&#1575; &#1601;&#1610; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;.</p><p>&#1587;&#1606;&#1578;&#1581;&#1583;&#1617;&#1579; &#1593;&#1606; &#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1576;&#1578;&#1601;&#1589;&#1610;&#1604; &#1571;&#1603;&#1576;&#1585; &#1601;&#1610; &#1575;&#1604;&#1601;&#1602;&#1585;&#1577; &#1575;&#1604;&#1602;&#1575;&#1583;&#1605;&#1577;.</p><h3 id="-functions-">&#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604;&#1617; (Functions)</h3><p>&#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604; &#1605;&#1603;&#1608;&#1617;&#1606; &#1571;&#1587;&#1575;&#1587;&#1610;&#1617; &#1601;&#1610; &#1576;&#1585;&#1575;&#1605;&#1580; JavaScript &#1604;&#1571;&#1606;&#1617;&#1607;&#1575; &#1578;&#1608;&#1601;&#1617;&#1585; &#1608;&#1587;&#1610;&#1604;&#1577; &#1604;&#1578;&#1607;&#1610;&#1574;&#1577; &#1608;&#1592;&#1575;&#1574;&#1601; &#1589;&#1594;&#1610;&#1585;&#1577; &#1601;&#1610; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580; &#1576;&#1589;&#1608;&#1585;&#1577; &#1580;&#1586;&#1569; &#1605;&#1587;&#1578;&#1602;&#1604;&#1617; &#1608;&#1605;&#1606;&#1592;&#1617;&#1605;. &#1575;&#1601;&#1578;&#1585;&#1590; &#1605;&#1579;&#1604;&#1611;&#1575; &#1583;&#1575;&#1604;&#1617;&#1577; &#1578;&#1580;&#1605;&#1593; &#1593;&#1583;&#1583;&#1610;&#1606;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function(a, b) {
    return a + b;
}</pre><p>&#1578;&#1571;&#1582;&#1584; &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; <strong>&#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1610;&#1606;</strong> &#1575;&#1579;&#1606;&#1610;&#1606; &#1607;&#1605;&#1575; <code>a</code> &#1608;<code>b</code>&#1548; &#1578;&#1580;&#1605;&#1593;&#1607;&#1605;&#1575; &#1579;&#1605;&#1617; &#1578;&#1593;&#1610;&#1583; &#1575;&#1604;&#1605;&#1580;&#1605;&#1608;&#1593; &#1603;&#1606;&#1578;&#1610;&#1580;&#1577; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577;.</p><p>&#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602; &#1607;&#1608; &#1576;&#1585;&#1606;&#1575;&#1605;&#1580; JavaScript &#1587;&#1604;&#1610;&#1605; &#1575;&#1604;&#1589;&#1617;&#1610;&#1575;&#1594;&#1577;&#1548; &#1604;&#1603;&#1606;&#1617;&#1607; &#1604;&#1575; &#1610;&#1601;&#1593;&#1604; &#1588;&#1610;&#1574;&#1611;&#1575; &#1593;&#1604;&#1609; &#1575;&#1604;&#1573;&#1591;&#1604;&#1575;&#1602;&#1548; &#1604;&#1571;&#1606;&#1617;&#1607; &#1605;&#1575; &#1605;&#1606; &#1591;&#1585;&#1610;&#1602;&#1577; &#1578;&#1587;&#1605;&#1581; &#1604;&#1606;&#1575; &#1576;&#1571;&#1606; &#1606;&#1591;&#1604;&#1576; &#1605;&#1606; &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1571;&#1606; &#1578;&#1580;&#1605;&#1593; &#1571;&#1610; &#1593;&#1583;&#1583;&#1610;&#1606; &#1576;&#1593;&#1583;&#1615;. &#1593;&#1604;&#1610;&#1606;&#1575; &#1573;&#1584;&#1611;&#1575; &#1573;&#1610;&#1580;&#1575;&#1583; &#1591;&#1585;&#1610;&#1602;&#1577; <em>&#1604;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569;</em> &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577;&#1548; &#1608;&#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1601;&#1593;&#1604; &#1584;&#1604;&#1603; &#1576;&#1573;&#1587;&#1606;&#1575;&#1583;&#1607;&#1575; &#1571;&#1608;&#1604;&#1617;&#1611;&#1575; &#1573;&#1604;&#1609; &#1605;&#1578;&#1594;&#1610;&#1617;&#1585;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var addTwoNumbers = function(a, b) {
  return a + b;
}</pre><p>&#1605;&#1575; &#1601;&#1593;&#1604;&#1606;&#1575;&#1607;&#1575; &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1571;&#1582;&#1610;&#1585; &#1607;&#1608; &#1571;&#1606;&#1617;&#1606;&#1575; &#1571;&#1582;&#1584;&#1606;&#1575; <strong>&#1578;&#1593;&#1576;&#1610;&#1585;&#1611;&#1575; &#1593;&#1606; &#1583;&#1575;&#1604;&#1617;&#1577; (function expression)</strong> &#1608;&#1571;&#1587;&#1606;&#1583;&#1606;&#1575;&#1607; &#1573;&#1604;&#1609; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;. &#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1575;&#1604;&#1570;&#1606; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1587;&#1605; &#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585;:</p><pre data-pbcklang="php" data-pbcktabsize="" class="php ipsCode prettyprint">log( addTwoNumbers(1, 1) ); // &#1578;&#1591;&#1576;&#1593; 2</pre><p>&#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1576;&#1583;&#1604;&#1575;&#1611; &#1605;&#1606; &#1584;&#1604;&#1603; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <strong>&#1578;&#1589;&#1585;&#1610;&#1581; &#1593;&#1606; &#1583;&#1575;&#1604;&#1617;&#1577; (function declaration)</strong> &#1604;&#1573;&#1593;&#1591;&#1575;&#1569; &#1583;&#1575;&#1604;&#1617;&#1578;&#1606;&#1575; &#1575;&#1587;&#1605;&#1611;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">function addTwoNumbers(a, b) {
  return a + b;
}</pre><p>&#1608;&#1603;&#1604;&#1575; &#1575;&#1604;&#1591;&#1617;&#1585;&#1610;&#1602;&#1578;&#1610;&#1606; &#1578;&#1587;&#1605;&#1581;&#1575;&#1606; &#1604;&#1606;&#1575; &#1576;&#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1583;&#1575;&#1604;&#1617;&#1578;&#1606;&#1575; &#1576;&#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1606;&#1601;&#1587;&#1607;&#1548; &#1608;&#1604;&#1603;&#1606; &#1610;&#1580;&#1576; &#1575;&#1604;&#1581;&#1584;&#1585; &#1593;&#1606;&#1583; &#1575;&#1593;&#1578;&#1605;&#1575;&#1583; &#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1571;&#1582;&#1610;&#1585; &#1604;&#1571;&#1587;&#1576;&#1575;&#1576; &#1578;&#1588;&#1585;&#1581;&#1607;&#1575; <a rel="external nofollow" href="http://javascriptweblog.wordpress.com/2010/07/06/function-declarations-vs-function-expressions/">&#1607;&#1584;&#1607; &#1575;&#1604;&#1578;&#1617;&#1583;&#1608;&#1610;&#1606;&#1577;</a>.</p><p>&#1575;&#1604;&#1582;&#1604;&#1575;&#1589;&#1577;: &#1578;&#1587;&#1605;&#1610;&#1577; &#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604;&#1617; &#1576;&#1575;&#1604;&#1578;&#1617;&#1589;&#1585;&#1610;&#1581; &#1593;&#1606; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1602;&#1583; &#1578;&#1572;&#1583;&#1617;&#1610; &#1573;&#1604;&#1609; &#1606;&#1578;&#1575;&#1574;&#1580; &#1594;&#1610;&#1585; &#1605;&#1615;&#1578;&#1608;&#1602;&#1617;&#1593;&#1577; &#1573;&#1606; &#1604;&#1605; &#1578;&#1601;&#1607;&#1605; &#1576;&#1583;&#1602;&#1617;&#1577; &#1573;&#1581;&#1583;&#1609; &#1605;&#1610;&#1617;&#1586;&#1575;&#1578; JavaScript &#1575;&#1604;&#1605;&#1593;&#1585;&#1608;&#1601;&#1577; &#1576;&#1575;&#1587;&#1605; "&#1575;&#1604;&#1585;&#1617;&#1601;&#1593; &#1573;&#1604;&#1609; &#1571;&#1593;&#1604;&#1609; &#1575;&#1604;&#1606;&#1617;&#1591;&#1575;&#1602;" (hoisting). &#1578;&#1601;&#1589;&#1610;&#1604; &#1607;&#1584;&#1607; &#1575;&#1604;&#1605;&#1610;&#1586;&#1577; &#1605;&#1608;&#1590;&#1608;&#1593;&#1612; &#1582;&#1575;&#1585;&#1580; &#1593;&#1606; &#1606;&#1591;&#1575;&#1602; &#1607;&#1584;&#1607; &#1575;&#1604;&#1587;&#1617;&#1604;&#1587;&#1604;&#1577;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617;&#1606;&#1575; &#1587;&#1606;&#1593;&#1578;&#1605;&#1583; &#1573;&#1587;&#1606;&#1575;&#1583; &#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1601;&#1610; &#1575;&#1604;&#1608;&#1602;&#1578; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610;&#1617;.</p><h3 id="-variable-scope-">&#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604; &#1608;&#1606;&#1591;&#1575;&#1602; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; (Variable scope)</h3><p>&#1578;&#1603;&#1608;&#1606; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1593;&#1585;&#1617;&#1614;&#1601; &#1590;&#1605;&#1606; &#1583;&#1575;&#1604;&#1617;&#1577; &#1576;&#1580;&#1605;&#1604;&#1577; <code>var</code> &#1605;&#1615;&#1578;&#1575;&#1581;&#1577; &#1601;&#1602;&#1591; &#1605;&#1606; &#1583;&#1575;&#1582;&#1604; &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577;&#1548; &#1608;&#1607;&#1584;&#1575; &#1571;&#1605;&#1585; &#1605;&#1585;&#1594;&#1608;&#1576;&#1612; &#1593;&#1575;&#1583;&#1577;&#1611;&#1548; &#1608;&#1604;&#1584;&#1575; &#1610;&#1580;&#1576; &#1575;&#1604;&#1578;&#1617;&#1589;&#1585;&#1610;&#1581; &#1593;&#1606; &#1603;&#1604;&#1617; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1601;&#1610; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1580;&#1605;&#1604; <code>var</code> &#1605;&#1575; &#1604;&#1605; &#1610;&#1615;&#1602;&#1589;&#1583; &#1580;&#1593;&#1604;&#1607;&#1575; &#1593;&#1575;&#1605;&#1617;&#1577; (global)&#1548; &#1571;&#1610; &#1605;&#1578;&#1575;&#1581;&#1577;&#1611; &#1593;&#1576;&#1585; &#1603;&#1575;&#1605;&#1604; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580; &#1608;&#1601;&#1610; &#1571;&#1610;&#1617; &#1605;&#1608;&#1590;&#1593; &#1605;&#1606;&#1607;. &#1604;&#1610;&#1587; &#1607;&#1584;&#1575; &#1605;&#1575; &#1606;&#1615;&#1585;&#1610;&#1583;&#1607; &#1593;&#1575;&#1583;&#1577;&#1611; &#1573;&#1604;&#1617;&#1575; &#1573;&#1584;&#1575; &#1571;&#1585;&#1583;&#1606;&#1575; &#1578;&#1594;&#1610;&#1610;&#1585; &#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; &#1605;&#1606; &#1606;&#1589;&#1617; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1570;&#1582;&#1585;.</p><p>&#1608;&#1604;&#1603;&#1606; &#1605;&#1575; &#1605;&#1593;&#1606;&#1609; &#1571;&#1606; &#1578;&#1603;&#1608;&#1606; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1605;&#1615;&#1578;&#1575;&#1581;&#1577;&#1611; &#1601;&#1602;&#1591; &#1583;&#1575;&#1582;&#1604; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577;&#1567; &#1580;&#1585;&#1617;&#1576; &#1607;&#1584;&#1575; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580;:</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1606;&#1589;&#1617; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1582;&#1575;&#1591;&#1574;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var myFunction = function() {
  var foo = 'bar';
};

myFunction();
log( typeof foo ); // &#1578;&#1591;&#1576;&#1593; undefined!</pre><p><a href="http://jsbin.com/zocepi/1/edit?js,console" rel="external nofollow">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&nbsp;</p><p>&#1604;&#1608; &#1571;&#1606;&#1617;&#1606;&#1575; &#1581;&#1575;&#1608;&#1604;&#1606;&#1575; &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1602;&#1610;&#1605;&#1577; <code>foo</code> &#1582;&#1575;&#1585;&#1580; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; (&#1576;&#1583;&#1604; &#1575;&#1604;&#1575;&#1603;&#1578;&#1601;&#1575;&#1569; &#1576;&#1601;&#1581;&#1589; &#1606;&#1608;&#1593;&#1607;&#1575;)&#1548; &#1604;&#1571;&#1576;&#1604;&#1594;&#1606;&#1575; &#1575;&#1604;&#1605;&#1615;&#1578;&#1589;&#1601;&#1617;&#1581; &#1576;&#1608;&#1580;&#1608;&#1583; &#1582;&#1591;&#1571;&#1548; &#1608;&#1604;&#1606; &#1610;&#1578;&#1575;&#1576;&#1593; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580; &#1575;&#1604;&#1593;&#1605;&#1604; &#1601;&#1610;&#1605;&#1575; &#1610;&#1604;&#1610; &#1575;&#1604;&#1605;&#1608;&#1590;&#1593; &#1575;&#1604;&#1617;&#1584;&#1610; &#1575;&#1587;&#1578;&#1582;&#1583;&#1605;&#1606;&#1575; <code>foo</code> &#1593;&#1606;&#1583;&#1607;.</p><p>&#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610; &#1610;&#1576;&#1610;&#1617;&#1606; &#1603;&#1610;&#1601; &#1610;&#1605;&#1603;&#1606; &#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1610;&#1606; &#1605;&#1582;&#1578;&#1604;&#1601;&#1610;&#1606; &#1571;&#1606; &#1610;&#1608;&#1580;&#1583;&#1575; &#1576;&#1575;&#1587;&#1605;&#1613; &#1608;&#1575;&#1581;&#1583; &#1591;&#1575;&#1604;&#1605;&#1575; &#1571;&#1606;&#1617; &#1603;&#1604;&#1617;&#1611;&#1575; &#1605;&#1606;&#1607;&#1605;&#1575; &#1605;&#1608;&#1580;&#1608;&#1583; &#1601;&#1610; &#1606;&#1591;&#1575;&#1602; &#1605;&#1606;&#1601;&#1589;&#1604; &#1593;&#1606; &#1575;&#1604;&#1570;&#1582;&#1585;. &#1601;&#1610; &#1607;&#1584;&#1575; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1606;&#1615;&#1589;&#1585;&#1617;&#1581; &#1593;&#1606; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; <code>foo</code> &#1608;&#1606;&#1587;&#1606;&#1583; &#1573;&#1604;&#1610;&#1607; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; <code>'qux'</code>&#1548; &#1579;&#1605; &#1606;&#1615;&#1589;&#1585;&#1617;&#1581; &#1593;&#1606; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; &#1570;&#1582;&#1585; &#1583;&#1575;&#1582;&#1604; &#1583;&#1575;&#1604;&#1617;&#1577;&#1548; &#1608;&#1606;&#1615;&#1587;&#1605;&#1617;&#1610;&#1607; <code>foo</code> &#1571;&#1610;&#1590;&#1611;&#1575;&#1548; &#1608;&#1606;&#1615;&#1587;&#1606;&#1583; &#1573;&#1604;&#1610;&#1607; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; <code>'bar'</code>. &#1604;&#1575;&#1581;&#1592; &#1571;&#1606;&#1617; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; <code>foo</code> &#1582;&#1575;&#1585;&#1580; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1604;&#1575; &#1610;&#1578;&#1594;&#1610;&#1617;&#1585; &#1581;&#1578;&#1617;&#1609; &#1576;&#1593;&#1583; &#1571;&#1606; &#1606;&#1615;&#1606;&#1588;&#1574; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; <code>foo</code> &#1583;&#1575;&#1582;&#1604; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577;.</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var foo = 'qux';
var myFunction = function() {
  var foo = 'bar';
};

log( foo ); // &#1578;&#1591;&#1576;&#1593; 'qux'
myFunction();
log( foo ); // &#1578;&#1591;&#1576;&#1593; 'qux' &#1571;&#1610;&#1590;&#1611;&#1575;</pre><p>&#1593;&#1604;&#1609; &#1575;&#1604;&#1585;&#1617;&#1594;&#1605; &#1605;&#1606; &#1578;&#1588;&#1575;&#1585;&#1603; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1610;&#1606; &#1575;&#1587;&#1605;&#1611;&#1575; &#1608;&#1575;&#1581;&#1583;&#1611;&#1575;&#1548; &#1573;&#1604;&#1617;&#1575; &#1571;&#1606;&#1617; JavaScript &#1578;&#1593;&#1578;&#1576;&#1585;&#1607;&#1605;&#1575; &#1588;&#1610;&#1574;&#1610;&#1606; &#1605;&#1582;&#1578;&#1604;&#1601;&#1610;&#1606; &#1576;&#1575;&#1604;&#1603;&#1575;&#1605;&#1604;&#1548; &#1608;&#1607;&#1584;&#1575; &#1608;&#1575;&#1581;&#1583; &#1605;&#1606; &#1593;&#1583;&#1617;&#1577; &#1571;&#1587;&#1576;&#1575;&#1576; &#1578;&#1583;&#1601;&#1593;&#1603; &#1604;&#1573;&#1593;&#1591;&#1575;&#1569; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578;&#1603; &#1571;&#1587;&#1605;&#1575;&#1569; &#1605;&#1615;&#1593;&#1576;&#1617;&#1585;&#1577;.</p><p>&#1606;&#1591;&#1575;&#1602; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1605;&#1601;&#1607;&#1608;&#1605; &#1580;&#1608;&#1607;&#1585;&#1610;&#1617; &#1601;&#1610; JavaScript&#1548; &#1608;&#1604;&#1593;&#1604;&#1617;&#1607; &#1610;&#1587;&#1576;&#1617;&#1576; &#1576;&#1593;&#1590; &#1575;&#1604;&#1575;&#1585;&#1578;&#1576;&#1575;&#1603; &#1604;&#1604;&#1605;&#1576;&#1578;&#1583;&#1574;&#1610;&#1606;. &#1578;&#1584;&#1603;&#1617;&#1585;:</p><ul><li>&#1601;&#1610; &#1575;&#1604;&#1571;&#1594;&#1604;&#1576;&#1610;&#1577; &#1575;&#1604;&#1587;&#1617;&#1575;&#1581;&#1602;&#1577; &#1605;&#1606; &#1575;&#1604;&#1581;&#1575;&#1604;&#1575;&#1578;&#1548; &#1589;&#1585;&#1617;&#1581; &#1593;&#1606; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1576;&#1580;&#1605;&#1604;&#1577; <code>var</code></li><li>&#1604;&#1575; &#1610;&#1605;&#1603;&#1606; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1575;&#1604;&#1605;&#1601;&#1585;&#1608;&#1590;&#1577; &#1583;&#1575;&#1582;&#1604; &#1583;&#1575;&#1604;&#1617;&#1577; &#1576;&#1580;&#1605;&#1604;&#1577; <code>var</code> &#1605;&#1606; &#1582;&#1575;&#1585;&#1580; &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577;</li><li>&#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1601;&#1585;&#1590; &#1576;&#1604;&#1575; &#1580;&#1605;&#1604;&#1577; <code>var</code> &#1578;&#1603;&#1608;&#1606; &#1593;&#1575;&#1605;&#1617;&#1577;&#1611; &#1583;&#1575;&#1574;&#1605;&#1611;&#1575;</li></ul><p>&#1575;&#1606;&#1578;&#1576;&#1607; &#1573;&#1604;&#1609; &#1571;&#1606;&#1617; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1615;&#1589;&#1585;&#1617;&#1614;&#1581; &#1593;&#1606;&#1607;&#1575; &#1576;&#1604;&#1575; &#1575;&#1604;&#1603;&#1604;&#1605;&#1577; <code>var</code> &#1578;&#1603;&#1608;&#1606; &#1590;&#1605;&#1606;&#1610;&#1617;&#1611;&#1575; &#1593;&#1575;&#1605;&#1617;&#1577;&#1611;. &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610; &#1604;&#1583;&#1610;&#1606;&#1575; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; <code>a</code> &#1575;&#1604;&#1605;&#1578;&#1575;&#1581; &#1582;&#1575;&#1585;&#1580; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577; &#1604;&#1571;&#1606;&#1617; &#1593;&#1615;&#1585;&#1617;&#1616;&#1601; &#1576;&#1583;&#1608;&#1606; &#1575;&#1604;&#1603;&#1604;&#1605;&#1577; <code>var</code> (&#1608;&#1607;&#1584;&#1575; &#1571;&#1605;&#1585;&#1612; &#1594;&#1610;&#1585; &#1605;&#1585;&#1594;&#1608;&#1576; &#1601;&#1610; &#1605;&#1593;&#1592;&#1605; &#1575;&#1604;&#1581;&#1575;&#1604;&#1575;&#1578;).</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1606;&#1589;&#1617; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1594;&#1610;&#1585; &#1570;&#1605;&#1606;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">function test() {
  a = 1;
}

test();

log( a ); // &#1578;&#1591;&#1576;&#1593; 1
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/3/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><h3 id="-objects-">&#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; (Objects)</h3><p>&#1575;&#1604;&#1581;&#1602;&#1610;&#1602;&#1577; &#1571;&#1606;&#1617; &#1605;&#1593;&#1592;&#1605; &#1605;&#1575; &#1606;&#1578;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593;&#1607; &#1601;&#1610; JavaScript &#1604;&#1610;&#1587; &#1587;&#1608;&#1609; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578;&#1548; &#1608;&#1604;&#1610;&#1587; &#1601;&#1610; &#1575;&#1604;&#1604;&#1617;&#1594;&#1577; &#1573;&#1604;&#1617;&#1575; 5 &#1571;&#1606;&#1608;&#1575;&#1593; &#1605;&#1606; &#1575;&#1604;&#1602;&#1610;&#1605; &#1575;&#1604;&#1617;&#1578;&#1610; <em>&#1604;&#1575;</em> &#1578;&#1615;&#1593;&#1578;&#1576;&#1585; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578;:</p><ul><li>&#1575;&#1604;&#1587;&#1604;&#1575;&#1587;&#1604; &#1575;&#1604;&#1606;&#1617;&#1589;&#1610;&#1617;&#1577; (strings)</li><li>&#1575;&#1604;&#1602;&#1610;&#1605; &#1575;&#1604;&#1605;&#1606;&#1591;&#1602;&#1610;&#1577; (true/false)</li><li>&#1575;&#1604;&#1571;&#1593;&#1583;&#1575;&#1583;</li><li><code>undefined</code> (&#1594;&#1610;&#1585; &#1605;&#1615;&#1593;&#1585;&#1617;&#1601;)</li><li><code>null</code> (&#1605;&#1593;&#1583;&#1608;&#1605;)</li></ul><p>&#1578;&#1615;&#1587;&#1605;&#1617;&#1609; &#1575;&#1604;&#1602;&#1610;&#1605; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602;&#1577; <strong>&#1576;&#1575;&#1604;&#1571;&#1606;&#1608;&#1575;&#1593; &#1575;&#1604;&#1571;&#1608;&#1617;&#1604;&#1610;&#1617;&#1577; (primitives)</strong>&#1548; &#1608;&#1610;&#1605;&#1603;&#1606; &#1581;&#1578;&#1617;&#1609; &#1604;&#1576;&#1593;&#1590; &#1607;&#1584;&#1607; &#1575;&#1604;&#1602;&#1610;&#1605; &#1571;&#1606; &#1578;&#1615;&#1593;&#1575;&#1605;&#1604; &#1603;&#1605;&#1575; &#1604;&#1608; &#1571;&#1606;&#1617;&#1607;&#1575; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578; (&#1587;&#1606;&#1588;&#1585;&#1581; &#1607;&#1584;&#1575; &#1576;&#1593;&#1583; &#1602;&#1604;&#1610;&#1604;). &#1608;&#1604;&#1603;&#1606; &#1605;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1567; &#1604;&#1606;&#1615;&#1604;&#1602;&#1616; &#1606;&#1592;&#1585;&#1577;&#1611; &#1593;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606;&#1613; &#1576;&#1587;&#1610;&#1591;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var person = {
  firstName: 'Boaz',
  lastName: 'Sender'
};</pre><p>&#1604;&#1604;&#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1617;&#1584;&#1610; &#1571;&#1606;&#1588;&#1571;&#1606;&#1575;&#1607; &#1571;&#1593;&#1604;&#1575;&#1607; <strong>&#1582;&#1575;&#1589;&#1617;&#1578;&#1575;&#1606;</strong> &#1575;&#1579;&#1606;&#1578;&#1575;&#1606; <strong>(properties)</strong>:&rlm; <code>firstName</code> &#1608;<code>lastName</code>. &#1571;&#1606;&#1588;&#1571;&#1606;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1576;&#1589;&#1610;&#1575;&#1594;&#1577; "&#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1581;&#1585;&#1601;&#1610;&#1617; (object literal)" &#1571;&#1610; &#1576;&#1573;&#1581;&#1575;&#1591;&#1577; &#1605;&#1580;&#1605;&#1608;&#1593;&#1577; &#1605;&#1606; &#1571;&#1586;&#1608;&#1575;&#1580; &#1605;&#1601;&#1578;&#1575;&#1581;/&#1602;&#1610;&#1605;&#1577; &#1576;&#1602;&#1608;&#1587;&#1610;&#1606; &#1605;&#1593;&#1603;&#1608;&#1601;&#1610;&#1606; <code>{}</code>. &#1604;&#1575;&#1581;&#1592; &#1571;&#1606;&#1617; &#1606;&#1602;&#1591;&#1578;&#1610;&#1606; (<code>:</code>) &#1578;&#1601;&#1589;&#1604;&#1575;&#1606; &#1576;&#1610;&#1606; &#1575;&#1604;&#1605;&#1601;&#1578;&#1575;&#1581; &#1608;&#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1608;&#1571;&#1606;&#1617; &#1601;&#1575;&#1589;&#1604;&#1577; &#1604;&#1575;&#1578;&#1610;&#1606;&#1610;&#1617;&#1577; (<code>,</code>) &#1578;&#1601;&#1589;&#1604; &#1576;&#1610;&#1606; &#1603;&#1604;&#1617; &#1586;&#1608;&#1580;&#1610;&#1606;. &#1604;&#1575;&#1581;&#1592; &#1571;&#1606;&#1617;&#1607; &#1605;&#1575; &#1605;&#1606; &#1601;&#1575;&#1589;&#1604;&#1577; &#1576;&#1593;&#1583; &#1575;&#1604;&#1586;&#1617;&#1608;&#1580; &#1575;&#1604;&#1571;&#1582;&#1610;&#1585;&#1548; &#1608;&#1573;&#1606; &#1571;&#1590;&#1601;&#1578;&#1607;&#1575; &#1587;&#1607;&#1608;&#1611;&#1575; &#1601;&#1587;&#1578;&#1602;&#1593; &#1571;&#1582;&#1591;&#1575;&#1569; &#1593;&#1606;&#1583; &#1578;&#1606;&#1601;&#1610;&#1584; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580; &#1601;&#1610; &#1575;&#1604;&#1605;&#1578;&#1589;&#1601;&#1617;&#1581;&#1575;&#1578; &#1575;&#1604;&#1602;&#1583;&#1610;&#1605;&#1577;.</p><h4 id="-">&#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1582;&#1589;&#1575;&#1574;&#1589;</h4><p>&#1581;&#1601;&#1592;&#1606;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1601;&#1610; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; &#1571;&#1587;&#1605;&#1610;&#1606;&#1575;&#1607; <code>person</code>&#1548; &#1605;&#1605;&#1617;&#1575; &#1610;&#1615;&#1587;&#1607;&#1617;&#1604; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1582;&#1589;&#1575;&#1574;&#1589;&#1607;&#1548; &#1573;&#1605;&#1617;&#1575; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <em>&#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1606;&#1617;&#1602;&#1575;&#1591; (dot notation)</em> &#1571;&#1608; <em>&#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1571;&#1602;&#1608;&#1575;&#1587; &#1575;&#1604;&#1605;&#1615;&#1585;&#1576;&#1617;&#1593;&#1577; (bracket notation)</em>.</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender'
};

log( 'First name: ' + person.firstName );     // dot notation
log( 'Last name: ' + person[ 'lastName' ] );  // bracket notation</pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/4/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a><script src="http://static.jsbin.com/js/embed.js"></script></p><p>&#1587;&#1578;&#1604;&#1575;&#1581;&#1592; &#1571;&#1606;&#1617;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1605;&#1606;&#1575; &#1587;&#1604;&#1587;&#1604;&#1577; &#1606;&#1589;&#1617;&#1610;&#1617;&#1577; (string) &#1604;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1587;&#1605; &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1606;&#1585;&#1610;&#1583;&#1607;&#1575; &#1593;&#1606;&#1583; &#1575;&#1593;&#1578;&#1605;&#1575;&#1583; &#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1571;&#1602;&#1608;&#1575;&#1587; &#1575;&#1604;&#1605;&#1615;&#1585;&#1576;&#1617;&#1593;&#1577;. &#1571;&#1605;&#1617;&#1575; &#1593;&#1606;&#1583; &#1575;&#1593;&#1578;&#1605;&#1575;&#1583; &#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1570;&#1582;&#1585;&#1548; &#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1606;&#1617;&#1602;&#1575;&#1591;&#1548; &#1601;&#1602;&#1583; &#1575;&#1587;&#1578;&#1582;&#1583;&#1605;&#1606;&#1575; &#1575;&#1587;&#1605; &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;&#1577; &#1606;&#1601;&#1587;&#1607; &#1583;&#1608;&#1606; &#1593;&#1604;&#1575;&#1605;&#1578;&#1610; &#1575;&#1604;&#1575;&#1602;&#1578;&#1576;&#1575;&#1587;. &#1610;&#1601;&#1610;&#1583; &#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1571;&#1602;&#1608;&#1575;&#1587; &#1575;&#1604;&#1605;&#1615;&#1585;&#1576;&#1617;&#1593;&#1577; &#1593;&#1606;&#1583;&#1605;&#1575; &#1606;&#1585;&#1610;&#1583; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1582;&#1575;&#1589;&#1617;&#1577; &#1610;&#1615;&#1581;&#1601;&#1614;&#1592; &#1575;&#1587;&#1605;&#1607;&#1575; &#1590;&#1605;&#1606; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender'
};

var prop = 'lastName';

log( 'Last name: ' + person[ prop ] );</pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/5/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a><script src="http://static.jsbin.com/js/embed.js"></script></p><p>&#1576;&#1593;&#1583; &#1571;&#1606; &#1571;&#1606;&#1588;&#1571;&#1606;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1548; &#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1578;&#1593;&#1583;&#1610;&#1604; &#1582;&#1589;&#1575;&#1574;&#1589;&#1607;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender'
};

person.firstName = 'Ben';
person.lastName = 'Alman';

log( 'First name: ' + person.firstName );
log( 'Last name: ' + person.lastName );
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/6/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1607;&#1584;&#1575; &#1575;&#1604;&#1580;&#1575;&#1606;&#1576; &#1601;&#1610; JavaScript &#1607;&#1608; &#1606;&#1593;&#1605;&#1577; &#1608;&#1606;&#1602;&#1605;&#1577; &#1601;&#1610; &#1575;&#1604;&#1608;&#1602;&#1578; &#1584;&#1575;&#1578;&#1607;&#1548; &#1601;&#1607;&#1608; &#1610;&#1593;&#1606;&#1610; &#1571;&#1606;&#1617; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1605;&#1585;&#1606;&#1577; &#1576;&#1589;&#1608;&#1585;&#1577; &#1601;&#1575;&#1574;&#1602;&#1577;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617;&#1607; &#1571;&#1610;&#1590;&#1611;&#1575; &#1610;&#1593;&#1606;&#1610; &#1571;&#1606;&#1617;&#1607; &#1605;&#1575; &#1605;&#1606; "&#1582;&#1589;&#1608;&#1589;&#1610;&#1617;&#1577;" &#1604;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578;&#1548; &#1601;&#1610;&#1605;&#1603;&#1606; &#1604;&#1571;&#1610;&#1617; &#1606;&#1589;&#1617; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1571;&#1606; &#1610;&#1615;&#1587;&#1606;&#1583; &#1602;&#1610;&#1605;&#1577;&#1611; &#1580;&#1583;&#1610;&#1583;&#1577; &#1573;&#1604;&#1609; &#1571;&#1610;&#1617; &#1582;&#1575;&#1589;&#1617;&#1577; &#1601;&#1610; &#1571;&#1610;&#1617; &#1603;&#1575;&#1574;&#1606; &#1610;&#1605;&#1603;&#1606;&#1607; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1610;&#1607;&#1563; &#1608;&#1607;&#1584;&#1575; &#1587;&#1576;&#1576; &#1570;&#1582;&#1585; &#1610;&#1583;&#1601;&#1593;&#1603; &#1604;&#1604;&#1575;&#1581;&#1578;&#1601;&#1575;&#1592; &#1576;&#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1605;&#1593;&#1586;&#1608;&#1604;&#1577;&#1611; &#1593;&#1606; &#1575;&#1604;&#1606;&#1617;&#1591;&#1575;&#1602; &#1575;&#1604;&#1593;&#1575;&#1605;&#1617; &#1573;&#1604;&#1617;&#1575; &#1573;&#1584;&#1575; &#1603;&#1606;&#1578; &#1578;&#1585;&#1610;&#1583; &#1601;&#1593;&#1604;&#1611;&#1575; &#1604;&#1604;&#1576;&#1585;&#1575;&#1605;&#1580; &#1575;&#1604;&#1571;&#1582;&#1585;&#1609; &#1571;&#1606; &#1578;&#1615;&#1594;&#1610;&#1617;&#1585; &#1578;&#1604;&#1603; &#1575;&#1604;&#1582;&#1589;&#1575;&#1574;&#1589;.</p><h4 id="-object-methods-">&#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; (Object methods)</h4><p><strong>&#1575;&#1604;&#1608;&#1592;&#1575;&#1574;&#1601; (methods)</strong> &#1607;&#1610; &#1582;&#1589;&#1575;&#1574;&#1589; &#1601;&#1610; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1602;&#1610;&#1605;&#1607;&#1575; &#1583;&#1608;&#1575;&#1604;&#1617; (functions)&#1548; &#1604;&#1606;&#1615;&#1590;&#1616;&#1601; &#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.greet()</code>&lrm; &#1573;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606; <code>person</code>:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender',
  greet : function(name) {
    log( 'Hi, ' + name );
  }
};

person.greet( person.firstName );
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/7/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1575;&#1587;&#1578;&#1602;&#1576;&#1604;&#1578; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.greet()</code>&lrm; &#1601;&#1610; &#1575;&#1604;&#1605;&#1579;&#1575;&#1604; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; <code>name</code> &#1603;&#1615;&#1605;&#1593;&#1575;&#1605;&#1616;&#1604; &#1604;&#1607;&#1575;. &#1593;&#1606;&#1583; &#1575;&#1587;&#1578;&#1583;&#1593;&#1575;&#1569; &#1607;&#1584;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577;&#1548; &#1571;&#1585;&#1587;&#1604;&#1606;&#1575; &#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;&#1577; <code>firstName</code> &#1604;&#1603;&#1575;&#1574;&#1606; <code>person</code> &#1576;&#1576;&#1587;&#1575;&#1591;&#1577;. &#1604;&#1608; &#1571;&#1585;&#1583;&#1606;&#1575; &#1608;&#1592;&#1610;&#1601;&#1577; &#1601;&#1575;&#1574;&#1602;&#1577; &#1575;&#1604;&#1605;&#1615;&#1585;&#1608;&#1606;&#1577; &#1578;&#1615;&#1604;&#1602;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1610;&#1617;&#1577; &#1593;&#1604;&#1609; &#1571;&#1610;&#1617; &#1588;&#1582;&#1589;&#1548; &#1601;&#1604;&#1585;&#1617;&#1576;&#1605;&#1575; &#1610;&#1603;&#1608;&#1606; &#1605;&#1575; &#1603;&#1578;&#1576;&#1606;&#1575;&#1607; &#1589;&#1581;&#1610;&#1581;&#1611;&#1575;. &#1608;&#1604;&#1603;&#1606; &#1575;&#1604;&#1594;&#1575;&#1604;&#1576; &#1571;&#1606;&#1617;&#1606;&#1575; &#1606;&#1585;&#1610;&#1583; &#1604;&#1608;&#1592;&#1610;&#1601;&#1578;&#1606;&#1575; &#1571;&#1606; &#1578;&#1615;&#1604;&#1602;&#1610; &#1575;&#1604;&#1578;&#1617;&#1581;&#1610;&#1617;&#1577; &#1593;&#1604;&#1609; &#1575;&#1604;&#1588;&#1617;&#1582;&#1589; &#1575;&#1604;&#1605;&#1615;&#1581;&#1583;&#1617;&#1583; &#1601;&#1610; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; <code>person</code> &#1601;&#1602;&#1591;.</p><h4 id="-this-">&#1605;&#1593;&#1606;&#1609; <code>this</code></h4><p>&#1583;&#1575;&#1582;&#1604; &#1603;&#1604;&#1617; &#1608;&#1592;&#1610;&#1601;&#1577; (&#1608;&#1583;&#1575;&#1582;&#1604; &#1603;&#1604;&#1617; &#1583;&#1575;&#1604;&#1617;&#1577;) &#1578;&#1578;&#1608;&#1601;&#1617;&#1585; &#1603;&#1604;&#1617;&#1605;&#1577; &#1605;&#1601;&#1578;&#1575;&#1581;&#1610;&#1617;&#1577; &#1582;&#1575;&#1589;&#1617;&#1577;: <code>this</code>&#1548; &#1608;&#1607;&#1610; &#1578;&#1615;&#1588;&#1610;&#1585; &#1573;&#1604;&#1609; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1615;&#1605;&#1579;&#1617;&#1616;&#1604; &#1575;&#1604;&#1587;&#1617;&#1610;&#1575;&#1602; &#1575;&#1604;&#1617;&#1584;&#1610; &#1575;&#1615;&#1587;&#1578;&#1583;&#1593;&#1610;&#1578; &#1601;&#1610;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577;.</p><p>&#1593;&#1606;&#1583;&#1605;&#1575; &#1606;&#1587;&#1578;&#1583;&#1593;&#1610; <code>person.greet()&lrm;</code> &#1610;&#1603;&#1608;&#1606; &#1575;&#1604;&#1587;&#1617;&#1610;&#1575;&#1602; &#1607;&#1608; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; <code>person</code> &#1584;&#1575;&#1578;&#1607;. &#1605;&#1593;&#1606;&#1609; &#1607;&#1584;&#1575; &#1571;&#1606;&#1617; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <code>this</code> &#1604;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1573;&#1581;&#1583;&#1609; &#1582;&#1589;&#1575;&#1574;&#1589; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; <code>person</code> &#1605;&#1576;&#1575;&#1588;&#1585;&#1577; &#1605;&#1606; &#1583;&#1575;&#1582;&#1604; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.greet()</code>&lrm;.</p><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1605;&#1593;&#1606;&#1609; <code>this</code> &#1602;&#1583; &#1610;&#1615;&#1587;&#1576;&#1617;&#1576; &#1575;&#1585;&#1578;&#1576;&#1575;&#1603;&#1611;&#1575; &#1588;&#1583;&#1610;&#1583;&#1611;&#1575; &#1604;&#1605;&#1591;&#1608;&#1617;&#1585;&#1610; JavaScript &#1575;&#1604;&#1605;&#1615;&#1576;&#1578;&#1583;&#1574;&#1610;&#1606;&#1548; &#1610;&#1605;&#1603;&#1606;&#1603; &#1575;&#1604;&#1575;&#1591;&#1605;&#1574;&#1606;&#1575;&#1606; &#1573;&#1606; &#1604;&#1605; &#1578;&#1601;&#1607;&#1605; &#1576;&#1583;&#1602;&#1617;&#1577; &#1605;&#1593;&#1606;&#1575;&#1607;&#1575;&#1548; &#1604;&#1571;&#1606;&#1617; jQuery &#1578;&#1615;&#1581;&#1587;&#1606; &#1575;&#1587;&#1578;&#1594;&#1604;&#1575;&#1604;&#1607;&#1575; &#1576;&#1581;&#1610;&#1579; &#1604;&#1575; &#1578;&#1590;&#1591;&#1617;&#1585; &#1604;&#1604;&#1583;&#1617;&#1582;&#1608;&#1604; &#1601;&#1610; &#1578;&#1601;&#1575;&#1589;&#1610;&#1604;&#1607;&#1575;&#1563; &#1608;&#1605;&#1593; &#1584;&#1604;&#1603; &#1601;&#1604;&#1575; &#1610;&#1603;&#1578;&#1605;&#1604; &#1575;&#1604;&#1581;&#1583;&#1610;&#1579; &#1593;&#1606; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1608;&#1608;&#1592;&#1575;&#1574;&#1601;&#1607;&#1575; &#1583;&#1608;&#1606; &#1575;&#1604;&#1573;&#1588;&#1575;&#1585;&#1577; &#1573;&#1604;&#1609; <code>this</code> &#1608;&#1573;&#1606; &#1602;&#1604;&#1610;&#1604;&#1611;&#1575;. &#1587;&#1571;&#1578;&#1585;&#1603; &#1604;&#1603; &#1581;&#1585;&#1617;&#1610;&#1617;&#1577; &#1575;&#1604;&#1575;&#1606;&#1578;&#1602;&#1575;&#1604; &#1573;&#1604;&#1609; &#1601;&#1602;&#1585;&#1577; "&#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1601;&#1610; jQuery" &#1605;&#1606; &#1607;&#1584;&#1607; &#1575;&#1604;&#1605;&#1602;&#1575;&#1604;&#1577; &#1573;&#1606; &#1588;&#1574;&#1578;&#1548; &#1579;&#1605;&#1617; &#1593;&#1615;&#1583; &#1573;&#1604;&#1609; &#1607;&#1606;&#1575; &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1588;&#1593;&#1585; &#1571;&#1606;&#1617;&#1603; &#1580;&#1575;&#1607;&#1586; &#1604;&#1601;&#1607;&#1605;&#1607;&#1575; &#1578;&#1605;&#1575;&#1605;&#1611;&#1575;.</em></p><p>&#1604;&#1606;&#1581;&#1575;&#1608;&#1604; &#1601;&#1607;&#1605; &#1603;&#1610;&#1601; &#1610;&#1605;&#1603;&#1606; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <code>this</code> &#1601;&#1610; &#1608;&#1592;&#1610;&#1601;&#1578;&#1606;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender',
  greet : function() {
    log( 'Hi, ' + this.firstName );
  }
};

person.greet();
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/sabiya/1/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1604;&#1610;&#1587;&#1578; &#1605;&#1615;&#1593;&#1602;&#1617;&#1583;&#1577;&#1611; &#1603;&#1579;&#1610;&#1585;&#1611;&#1575; &#1581;&#1578;&#1609; &#1575;&#1604;&#1570;&#1606;... &#1589;&#1581;&#1610;&#1581;&#1567; &#1605;&#1606;&#1588;&#1571; &#1575;&#1604;&#1578;&#1617;&#1593;&#1602;&#1610;&#1583; &#1607;&#1608; &#1571;&#1606;&#1617; <em>&#1605;&#1593;&#1606;&#1609; <code>this</code> &#1610;&#1605;&#1603;&#1606; &#1571;&#1606; &#1610;&#1578;&#1594;&#1610;&#1617;&#1585;</em>&#1548; &#1601;&#1575;&#1604;&#1571;&#1605;&#1585; &#1603;&#1605;&#1575; &#1602;&#1604;&#1606;&#1575; &#1610;&#1593;&#1578;&#1605;&#1583; &#1593;&#1604;&#1609; &#1575;&#1604;&#1587;&#1617;&#1610;&#1575;&#1602; &#1575;&#1604;&#1617;&#1584;&#1610; &#1575;&#1587;&#1578;&#1583;&#1593;&#1610;&#1578; &#1601;&#1610;&#1607; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1577;! &#1604;&#1575;&#1581;&#1592; &#1575;&#1604;&#1606;&#1617;&#1589;&#1617; &#1575;&#1604;&#1578;&#1617;&#1575;&#1604;&#1610;:</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1606;&#1589;&#1617; &#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1582;&#1575;&#1591;&#1574;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender',
  greet : function() {
    log( 'Hi, ' + this.firstName );
  }
};

var sayIt = person.greet; // store the method in a variable

sayIt(); // logs 'Hi, undefined' -- uh-oh
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/9/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1593;&#1606;&#1583;&#1605;&#1575; &#1606;&#1581;&#1601;&#1592; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1577; &lrm;<code>.greet()</code>&lrm; &#1601;&#1610; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; <code>sayIt</code> &#1579;&#1605;&#1617; &#1606;&#1587;&#1578;&#1583;&#1593;&#1610; <code>sayIt()&lrm;</code>&#1548; &#1601;&#1573;&#1606;&#1617; &#1575;&#1604;&#1587;&#1617;&#1610;&#1575;&#1602; &#1610;&#1578;&#1594;&#1610;&#1617;&#1585; &#1604;&#1610;&#1615;&#1589;&#1576;&#1581; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; &#1575;&#1604;&#1593;&#1575;&#1605;&#1617; <code>window</code>&#1548; <em>&#1604;&#1575; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606; <code>person</code></em>. &#1608;&#1576;&#1605;&#1575; &#1571;&#1606;&#1617; &#1604;&#1610;&#1587; &#1604;&#1604;&#1603;&#1575;&#1574;&#1606; <code>window</code> &#1582;&#1575;&#1589;&#1617;&#1577; &#1575;&#1587;&#1605;&#1607;&#1575; <code>firstName</code>&#1548; &#1601;&#1573;&#1606;&#1617; &#1575;&#1604;&#1606;&#1578;&#1610;&#1580;&#1577; &#1578;&#1603;&#1608;&#1606; <code>undefined</code> &#1593;&#1606;&#1583;&#1605;&#1575; &#1606;&#1581;&#1575;&#1608;&#1604; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1610;&#1607;&#1575;.</p><p>&#1605;&#1575; &#1575;&#1604;&#1584;&#1610; &#1593;&#1604;&#1609; &#1575;&#1604;&#1605;&#1615;&#1576;&#1585;&#1605;&#1580; &#1601;&#1593;&#1604;&#1607; &#1573;&#1584;&#1611;&#1575;&#1567; &#1571;&#1608;&#1617;&#1604;&#1611;&#1575;: &#1593;&#1604;&#1610;&#1607; &#1571;&#1606; &#1610;&#1581;&#1584;&#1585; &#1605;&#1606; &#1575;&#1604;&#1606;&#1617;&#1578;&#1575;&#1574;&#1580; &#1594;&#1610;&#1585; &#1575;&#1604;&#1605;&#1615;&#1578;&#1608;&#1602;&#1617;&#1593;&#1577; &#1604;&#1605;&#1593;&#1606;&#1609; <code>this</code> &#1593;&#1606;&#1583; &#1578;&#1582;&#1586;&#1610;&#1606; &#1608;&#1592;&#1575;&#1574;&#1601; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1601;&#1610; &#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578;. &#1608;&#1579;&#1575;&#1606;&#1610;&#1611;&#1575;: &#1593;&#1604;&#1610;&#1607; &#1571;&#1606; &#1610;&#1593;&#1604;&#1605; &#1571;&#1606;&#1617; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1607; &#1573;&#1580;&#1576;&#1575;&#1585; <code>this</code> &#1571;&#1606; &#1578;&#1615;&#1588;&#1610;&#1585; &#1573;&#1604;&#1609; &#1605;&#1575; &#1610;&#1588;&#1575;&#1569; &#1605;&#1606; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1608;&#1584;&#1604;&#1603; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1573;&#1581;&#1583;&#1609; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1578;&#1610;&#1606; &lrm;<code>.call()</code>&lrm; &#1608;&lrm;<code>.apply()</code>&lrm; &#1605;&#1593; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1584;&#1575;&#1578;&#1607;&#1575;.</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender',
  greet : function() {
    log( 'Hi, ' + this.firstName );
  }
};

var sayIt = person.greet;

sayIt.call( person );
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/10/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1603;&#1604;&#1575; &#1575;&#1604;&#1608;&#1592;&#1610;&#1601;&#1578;&#1610;&#1606; &#1575;&#1604;&#1605;&#1615;&#1578;&#1588;&#1575;&#1576;&#1607;&#1578;&#1610;&#1606; &lrm;<code>.call()</code>&lrm; &#1608;&lrm;<code>.apply()</code>&lrm; &#1578;&#1615;&#1578;&#1610;&#1581;&#1575;&#1606; &#1573;&#1605;&#1585;&#1575;&#1585; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &#1573;&#1604;&#1609; &#1575;&#1604;&#1583;&#1617;&#1575;&#1604;&#1617;&#1577; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1587;&#1578;&#1583;&#1593;&#1609; &#1576;&#1607;&#1605;&#1575;. &#1578;&#1582;&#1610;&#1617;&#1604; &#1571;&#1606;&#1617; &#1583;&#1575;&#1604;&#1577; &#1575;&#1604;&#1578;&#1617;&#1581;&#1610;&#1617;&#1577; &#1578;&#1602;&#1576;&#1604; &#1576;&#1593;&#1590; &#1575;&#1604;&#1605;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578;&#1548; &#1610;&#1605;&#1603;&#1606; &#1581;&#1610;&#1606;&#1574;&#1584;&#1613; &#1573;&#1605;&#1585;&#1575;&#1585; &#1607;&#1584;&#1607; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &lrm;<code>.call()</code>&lrm; &#1603;&#1605;&#1575; &#1610;&#1604;&#1610;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender',
  greet : function(greeting, punctuation) {
    log( greeting + ', ' + this.firstName + punctuation );
  }
};

var sayIt = person.greet;

sayIt.call( person, 'Hello', '!!1!!1' );
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/11/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1610;&#1605;&#1603;&#1606; &#1578;&#1606;&#1601;&#1610;&#1584; &#1575;&#1604;&#1571;&#1605;&#1585; &#1584;&#1575;&#1578;&#1607; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &lrm;<code>.apply()</code>&lrm;&#1548; &#1608;&#1604;&#1603;&#1606; &#1587;&#1606;&#1581;&#1578;&#1575;&#1580; &#1605;&#1593;&#1607;&#1575; &#1573;&#1604;&#1609; &#1573;&#1605;&#1585;&#1575;&#1585; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &#1590;&#1605;&#1606; &#1605;&#1589;&#1601;&#1608;&#1601;&#1577; &#1608;&#1575;&#1581;&#1583;&#1577; &#1576;&#1583;&#1604;&#1611;&#1575; &#1605;&#1606; &#1573;&#1605;&#1585;&#1575;&#1585;&#1607;&#1575; &#1605;&#1615;&#1606;&#1601;&#1589;&#1604;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var person = {
  firstName : 'Boaz',
  lastName : 'Sender',
  greet : function(greeting, punctuation) {
    log( greeting + ', ' + this.firstName + punctuation );
  }
};

var sayIt = person.greet;

sayIt.apply( person, [ 'Hello', '!!1!!1' ] );
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/12/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p><em>&#1605;&#1615;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1604;&#1578;&#1601;&#1575;&#1589;&#1610;&#1604; &#1571;&#1603;&#1579;&#1585; &#1593;&#1606; &lrm;<code>.call()</code>&lrm; &#1608;&lrm;<code>.apply()</code>&lrm;&#1548; &#1585;&#1575;&#1580;&#1593; &#1608;&#1579;&#1610;&#1602;&#1578;&#1610; &#1588;&#1576;&#1603;&#1577; &#1605;&#1615;&#1591;&#1608;&#1617;&#1616;&#1585;&#1610; &#1605;&#1608;&#1586;&#1610;&#1604;&#1617;&#1575; <a rel="external nofollow" href="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/call">&lrm;<code>.call()</code>&lrm;</a> &#1608;<a rel="external nofollow" href="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/apply">&lrm;<code>.apply()</code>&lrm;</a>&#1548;</em></p><h4 id="-jquery">&#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1601;&#1610; jQuery</h4><p>&#1604;&#1605; &#1606;&#1578;&#1591;&#1585;&#1617;&#1602; &#1576;&#1593;&#1583;&#1615; &#1573;&#1604;&#1609; &#1578;&#1601;&#1575;&#1589;&#1610;&#1604; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1601;&#1610; JavaScript &#1604;&#1603;&#1606;&#1617;&#1603; &#1575;&#1604;&#1570;&#1606; &#1578;&#1593;&#1585;&#1601; &#1575;&#1604;&#1571;&#1587;&#1575;&#1587;&#1610;&#1617;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1578;&#1610;&#1581; &#1604;&#1603; &#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1582;&#1604;&#1575;&#1604; &#1578;&#1593;&#1604;&#1617;&#1605;&#1603; jQuery&#1548; &#1601;&#1601;&#1610;&#1607;&#1575; &#1587;&#1578;&#1587;&#1578;&#1593;&#1605;&#1604; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1604;&#1590;&#1576;&#1591; &#1575;&#1604;&#1582;&#1610;&#1575;&#1585;&#1575;&#1578;&#1548; &#1603;&#1578;&#1594;&#1610;&#1610;&#1585; &#1593;&#1583;&#1617;&#1577; &#1582;&#1589;&#1575;&#1574;&#1589; CSS &#1604;&#1593;&#1606;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577; &#1605;&#1585;&#1617;&#1577; &#1608;&#1575;&#1581;&#1583;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">$('#main').css({
  color: 'red',
  border: '1px solid blue'
});</pre><p>&#1576;&#1582;&#1589;&#1608;&#1589; <code>this</code>&#1548; &#1601;&#1573;&#1606;&#1617; <code>jQuery</code> &#1578;&#1615;&#1587;&#1610;&#1591;&#1585; &#1593;&#1604;&#1609; &#1605;&#1593;&#1606;&#1575;&#1607;&#1575;&#1548; &#1608;&#1601;&#1610; &#1581;&#1575;&#1604;&#1577; &#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1575;&#1578; &#1575;&#1604;&#1571;&#1581;&#1583;&#1575;&#1579; (event handlers)&#1548; &#1578;&#1615;&#1588;&#1610;&#1585; <code>this</code> &#1573;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1601;&#1610; &#1575;&#1604;&#1589;&#1617;&#1601;&#1581;&#1577;&nbsp;&#1575;&#1604;&#1617;&#1584;&#1610; &#1585;&#1576;&#1591;&#1578;&#1617;&#1607; &#1576;&#1575;&#1604;&#1605;&#1615;&#1578;&#1608;&#1604;&#1617;&#1610;&#1548; &#1608;&#1601;&#1610; &#1581;&#1575;&#1604;&#1577; &#1587;&#1585;&#1583; &#1605;&#1580;&#1605;&#1608;&#1593;&#1577; &#1605;&#1606; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1601;&#1610; &#1578;&#1581;&#1583;&#1610;&#1583;&#1613;&#1548; &#1578;&#1615;&#1588;&#1610;&#1585; <code>this</code> &#1573;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1581;&#1575;&#1604;&#1610;&#1617; &#1601;&#1610; &#1575;&#1604;&#1587;&#1617;&#1585;&#1583;. &#1604;&#1610;&#1587; &#1593;&#1604;&#1610;&#1603; &#1575;&#1604;&#1581;&#1585;&#1589; &#1593;&#1604;&#1609; &#1601;&#1607;&#1605; <code>this</code> &#1576;&#1583;&#1602;&#1617;&#1577; &#1601;&#1610; &#1575;&#1604;&#1605;&#1585;&#1575;&#1581;&#1604; &#1575;&#1604;&#1571;&#1608;&#1604;&#1609; &#1604;&#1578;&#1593;&#1604;&#1617;&#1605;&#1603;&#1548; &#1576;&#1604; &#1575;&#1603;&#1578;&#1601;&#1616; &#1576;&#1573;&#1576;&#1602;&#1575;&#1569; &#1601;&#1603;&#1585;&#1578;&#1607;&#1575; &#1601;&#1610; &#1584;&#1607;&#1606;&#1603; &#1571;&#1579;&#1606;&#1575;&#1569; &#1578;&#1593;&#1604;&#1617;&#1605;&#1603;.</p><h4 id="-">&#1578;&#1601;&#1575;&#1589;&#1610;&#1604; &#1571;&#1603;&#1579;&#1585;</h4><p>&#1610;&#1578;&#1608;&#1587;&#1617;&#1593; <a rel="external nofollow" href="https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Working_with_Objects">&#1583;&#1604;&#1610;&#1604; JavaScript &#1601;&#1610; &#1588;&#1576;&#1603;&#1577; &#1605;&#1615;&#1591;&#1608;&#1617;&#1616;&#1585;&#1610; &#1605;&#1608;&#1586;&#1610;&#1604;&#1617;&#1575;</a> &#1601;&#1610; &#1588;&#1585;&#1581; &#1605;&#1608;&#1575;&#1590;&#1610;&#1593; &#1605;&#1579;&#1604; &#1575;&#1604;&#1606;&#1617;&#1605;&#1575;&#1584;&#1580; &#1575;&#1604;&#1576;&#1583;&#1574;&#1610;&#1617;&#1577; &#1604;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; (object prototypes) &#1608;&#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604; &#1575;&#1604;&#1605;&#1615;&#1588;&#1610;&#1617;&#1616;&#1583;&#1577; (constructor functions) &#1608;&#1581;&#1584;&#1601; &#1582;&#1589;&#1575;&#1574;&#1589; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578;.</p><h3 id="-arrays-">&#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578; (Arrays)</h3><p>&#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578; &#1606;&#1608;&#1593;&#1612; &#1605;&#1606; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1578;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1604;&#1581;&#1601;&#1592; &#1602;&#1575;&#1574;&#1605;&#1577; &#1605;&#1606; &#1575;&#1604;&#1602;&#1610;&#1605;&#1548; &#1608;&#1607;&#1610; &#1608;&#1587;&#1610;&#1604;&#1577;&#1612; &#1587;&#1607;&#1604;&#1577; &#1604;&#1578;&#1582;&#1586;&#1610;&#1606; &#1605;&#1580;&#1605;&#1608;&#1593;&#1577; &#1605;&#1606; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1578;&#1585;&#1575;&#1576;&#1591;&#1577; &#1605;&#1606; &#1606;&#1601;&#1587; &#1575;&#1604;&#1606;&#1617;&#1608;&#1593; (&#1603;&#1575;&#1604;&#1587;&#1617;&#1604;&#1575;&#1587;&#1604; &#1575;&#1604;&#1606;&#1617;&#1589;&#1610;&#1617;&#1577;)&#1548; &#1605;&#1593; &#1571;&#1606;&#1617; &#1575;&#1604;&#1608;&#1575;&#1602;&#1593; &#1571;&#1606;&#1617;&#1607; &#1604;&#1575; &#1588;&#1610;&#1569; &#1610;&#1605;&#1606;&#1593; &#1605;&#1589;&#1601;&#1608;&#1601;&#1577;&#1611; &#1605;&#1606; &#1571;&#1606; &#1578;&#1581;&#1608;&#1610; &#1593;&#1583;&#1617;&#1577; &#1571;&#1606;&#1608;&#1575;&#1593; &#1605;&#1606; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585;&#1548; &#1576;&#1605;&#1575; &#1601;&#1610; &#1584;&#1604;&#1603; &#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578;&#1613; &#1571;&#1582;&#1585;&#1609;.</p><p>&#1575;&#1604;&#1591;&#1617;&#1585;&#1610;&#1602;&#1577; &#1575;&#1604;&#1605;&#1615;&#1601;&#1590;&#1617;&#1604;&#1577; &#1604;&#1573;&#1606;&#1588;&#1575;&#1569; &#1605;&#1589;&#1601;&#1608;&#1601;&#1577; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605;&#1615; &#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578; &#1575;&#1604;&#1581;&#1585;&#1601;&#1610;&#1617;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var myArray = [ 'a', 'b', 'c' ];</pre><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1587;&#1578;&#1602;&#1585;&#1571; &#1605;&#1606; &#1608;&#1602;&#1578;&#1613; &#1604;&#1570;&#1582;&#1585; &#1576;&#1585;&#1575;&#1605;&#1580; &#1578;&#1615;&#1606;&#1588;&#1574; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578; &#1576;&#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1578;&#1575;&#1604;&#1610;:</em>&lrm;<em> <code>new Array('a', 'b', 'c')</code></em>&lrm;<em> &#1608;&#1607;&#1608; &#1571;&#1587;&#1604;&#1608;&#1576; &#1594;&#1610;&#1585; &#1605;&#1602;&#1576;&#1608;&#1604;&#1613; &#1608;&#1587;&#1591; &#1605;&#1615;&#1591;&#1608;&#1617;&#1585;&#1610; JavaScript &#1604;&#1571;&#1606;&#1617;&#1607; &#1604;&#1575; &#1610;&#1582;&#1578;&#1604;&#1601; &#1593;&#1606; &#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1575;&#1604;&#1571;&#1608;&#1617;&#1604; &#1587;&#1608;&#1609; &#1601;&#1610; &#1571;&#1606;&#1617; &#1604;&#1607; &#1593;&#1610;&#1608;&#1576;&#1611;&#1575; &#1604;&#1610;&#1587;&#1578; &#1601;&#1610; &#1575;&#1604;&#1571;&#1608;&#1617;&#1604;! &#1601;&#1605;&#1579;&#1604;&#1575;&#1611;: &#1603;&#1578;&#1575;&#1576;&#1577; </em>&lrm;<em><code>new Array(3)</code></em>&lrm;<em> &#1578;&#1593;&#1606;&#1610; &#1573;&#1606;&#1588;&#1575;&#1569; &#1605;&#1589;&#1601;&#1608;&#1601;&#1577; &#1601;&#1610;&#1607;&#1575; &#1579;&#1604;&#1575;&#1579; &#1593;&#1606;&#1575;&#1589;&#1585; &#1603;&#1604;&#1617;&#1607;&#1575; &#1594;&#1610;&#1585; &#1605;&#1615;&#1593;&#1585;&#1617;&#1601;&#1577;&#1548; &#1576;&#1583;&#1604;&#1575;&#1611; &#1605;&#1606; &#1573;&#1606;&#1588;&#1575;&#1569; &#1605;&#1589;&#1601;&#1608;&#1601;&#1577; &#1601;&#1610;&#1607;&#1575; &#1575;&#1604;&#1593;&#1583;&#1583; 3 (&#1571;&#1610; &#1576;&#1583;&#1604;&#1611;&#1575; &#1605;&#1606; <code>[ 3 ]</code>).</em></p><p>&#1610;&#1605;&#1603;&#1606; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1582;&#1589;&#1575;&#1574;&#1589; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578; (&#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1615;&#1587;&#1605;&#1617;&#1609; &#1571;&#1581;&#1610;&#1575;&#1606;&#1611;&#1575; <strong>&#1576;&#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1577;</strong> (elements)) &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1589;&#1610;&#1575;&#1594;&#1577; &#1575;&#1604;&#1571;&#1602;&#1608;&#1575;&#1587; &#1575;&#1604;&#1605;&#1585;&#1576;&#1617;&#1593;&#1577; &#1584;&#1575;&#1578;&#1607;&#1575; &#1575;&#1604;&#1605;&#1587;&#1578;&#1582;&#1583;&#1605;&#1577; &#1605;&#1593; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578;&#1548; &#1601;&#1603;&#1604;&#1617; &#1593;&#1606;&#1589;&#1585; &#1610;&#1615;&#1593;&#1591;&#1609; &#1575;&#1587;&#1605;&#1575; &#1578;&#1604;&#1602;&#1575;&#1574;&#1610;&#1617;&#1611;&#1575; &#1576;&#1581;&#1587;&#1576; &#1605;&#1608;&#1602;&#1593;&#1607; &#1601;&#1610; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1577;. &#1608;&#1604;&#1603;&#1606; &#1593;&#1604;&#1610;&#1603; &#1575;&#1604;&#1581;&#1584;&#1585;: &#1601;&#1575;&#1604;&#1571;&#1593;&#1583;&#1575;&#1583; &#1578;&#1576;&#1583;&#1571; &#1605;&#1606; &#1575;&#1604;&#1589;&#1617;&#1601;&#1585;. &#1604;&#1606;&#1615;&#1604;&#1602; &#1606;&#1592;&#1585;&#1577; &#1593;&#1604;&#1609; &#1605;&#1589;&#1601;&#1608;&#1601;&#1577; &#1601;&#1610;&#1607;&#1575; 3 &#1593;&#1606;&#1575;&#1589;&#1585;:</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1571;&#1587;&#1604;&#1608;&#1576; &#1594;&#1610;&#1585; &#1605;&#1615;&#1601;&#1590;&#1617;&#1604;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var myArray = [ 'a', 'b', 'c' ];
var firstItem = myArray[ "0" ]; // &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1571;&#1608;&#1617;&#1604;</pre><p>&#1593;&#1606;&#1583; &#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1577;&#1548; &#1601;&#1573;&#1606;&#1617;&#1607; &#1605;&#1606; &#1575;&#1604;&#1571;&#1587;&#1607;&#1604; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1571;&#1593;&#1583;&#1575;&#1583; &#1604;&#1578;&#1581;&#1583;&#1610;&#1583; &#1605;&#1608;&#1590;&#1593; &#1575;&#1604;&#1593;&#1606;&#1589;&#1585; &#1575;&#1604;&#1605;&#1591;&#1604;&#1608;&#1576; &#1601;&#1610; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1577;&#1548; &#1608;&#1575;&#1604;&#1617;&#1584;&#1610; &#1610;&#1615;&#1587;&#1605;&#1617;&#1609; <strong>&#1575;&#1604;&#1583;&#1617;&#1604;&#1610;&#1604; (index)</strong>:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var myArray = [ 'a', 'b', 'c' ];
var firstItem = myArray[ 0 ];

var secondItem = myArray[ 1 ]; // access the item at index 1
log( secondItem ); // logs 'b'
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/13/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1605;&#1593;&#1585;&#1601;&#1577; &#1593;&#1583;&#1583; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610; &#1605;&#1580;&#1605;&#1608;&#1593;&#1577; &#1576;&#1575;&#1604;&#1608;&#1589;&#1608;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1582;&#1575;&#1589;&#1617;&#1577; <code>length</code> &#1601;&#1610; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var myArray = [ 'a', 'b', 'c' ];
var len = myArray.length;
log( len ); // logs 3
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/14/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><h4 id="-for-">&#1581;&#1604;&#1602;&#1575;&#1578; <code>for</code>: &#1587;&#1585;&#1583; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578;</h4><p>&#1576;&#1605;&#1575; &#1571;&#1606;&#1617;&#1606;&#1575; &#1606;&#1593;&#1604;&#1605; &#1603;&#1610;&#1601; &#1606;&#1581;&#1583;&#1617;&#1583; &#1591;&#1608;&#1604; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1577; (&#1593;&#1583;&#1583; &#1575;&#1604;&#1593;&#1606;&#1575;&#1589;&#1585; &#1601;&#1610;&#1607;&#1575;)&#1548; &#1608;&#1571;&#1606;&#1617; &#1571;&#1608;&#1617;&#1604; &#1593;&#1606;&#1575;&#1589;&#1585;&#1607;&#1575; &#1610;&#1602;&#1593; &#1593;&#1606;&#1583; &#1575;&#1604;&#1583;&#1617;&#1604;&#1610;&#1604; <code>0</code>&#1548; &#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1573;&#1584;&#1606; &#1587;&#1585;&#1583; &#1593;&#1606;&#1575;&#1589;&#1585; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1577; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1581;&#1604;&#1602;&#1577; <code>for</code>:<br><script src="http://static.jsbin.com/js/embed.js"></script></p><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/15/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1610;&#1605;&#1603;&#1606;&#1606;&#1575; &#1601;&#1593;&#1604; &#1575;&#1604;&#1603;&#1579;&#1610;&#1585; &#1605;&#1606; &#1575;&#1604;&#1571;&#1588;&#1610;&#1575;&#1569; &#1576;&#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578;&#1548; &#1585;&#1575;&#1580;&#1593; <a rel="external nofollow" href="https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/">&#1608;&#1579;&#1610;&#1602;&#1577; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578; &#1601;&#1610; &#1588;&#1576;&#1603;&#1577; &#1605;&#1615;&#1591;&#1608;&#1617;&#1616;&#1585;&#1610; &#1605;&#1608;&#1586;&#1610;&#1617;&#1604;&#1575;</a> &#1604;&#1604;&#1575;&#1591;&#1617;&#1604;&#1575;&#1593; &#1593;&#1604;&#1609; &#1575;&#1604;&#1583;&#1617;&#1604;&#1610;&#1604; &#1575;&#1604;&#1603;&#1575;&#1605;&#1604;.</p><h2 id="-">&#1575;&#1604;&#1605;&#1606;&#1591;&#1602; &#1608;&#1575;&#1604;&#1578;&#1617;&#1581;&#1602;&#1617;&#1602; &#1605;&#1606; &#1575;&#1604;&#1589;&#1617;&#1581;&#1617;&#1616;&#1577;</h2><p>&#1578;&#1615;&#1608;&#1601;&#1617;&#1616;&#1585; JavaScript &#1575;&#1604;&#1603;&#1604;&#1605;&#1578;&#1610;&#1606; <code>if</code> &#1608;<code>else</code>&#1548; &#1608;&#1603;&#1584;&#1604;&#1603; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604; &#1575;&#1604;&#1579;&#1617;&#1604;&#1575;&#1579;&#1610;&#1548; &#1604;&#1604;&#1587;&#1617;&#1605;&#1575;&#1581; &#1576;&#1578;&#1606;&#1601;&#1610;&#1584; &#1576;&#1593;&#1590; &#1575;&#1604;&#1571;&#1608;&#1575;&#1605;&#1585; &#1601;&#1602;&#1591; &#1593;&#1606;&#1583; &#1578;&#1581;&#1602;&#1617;&#1602; &#1588;&#1585;&#1608;&#1591; &#1605;&#1593;&#1610;&#1617;&#1606;&#1577;. &#1578;&#1615;&#1581;&#1583;&#1617;&#1583; JavaScript &#1578;&#1608;&#1601;&#1617;&#1585; &#1588;&#1585;&#1591;&#1613; &#1605;&#1575; &#1576;&#1578;&#1581;&#1585;&#1617;&#1616;&#1610; "&#1589;&#1581;&#1617;&#1616;&#1577;" &#1602;&#1610;&#1605;&#1577; &#1571;&#1608; &#1593;&#1576;&#1575;&#1585;&#1577;. &#1608;&#1604;&#1571;&#1606;&#1617; JavaScript &#1604;&#1615;&#1594;&#1577;&#1612; &#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1577; &#1575;&#1604;&#1571;&#1606;&#1608;&#1575;&#1593; (dynamically typed)&#1548; &#1601;&#1573;&#1606;&#1617; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1606;&#1575; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1571;&#1610;&#1617;&#1577; &#1602;&#1610;&#1605;&#1577; &#1571;&#1608; &#1571;&#1610; &#1578;&#1585;&#1603;&#1610;&#1576;&#1613; &#1605;&#1606; &#1575;&#1604;&#1602;&#1610;&#1617;&#1605;&#1548; &#1573;&#1604;&#1617;&#1575; &#1571;&#1606;&#1617; &#1602;&#1608;&#1575;&#1593;&#1583; &#1575;&#1604;&#1578;&#1617;&#1581;&#1602;&#1617;&#1602; &#1605;&#1606; &#1603;&#1608;&#1606; &#1602;&#1610;&#1605;&#1577;&#1613; &#1605;&#1615;&#1593;&#1610;&#1617;&#1606;&#1577; &#1571;&#1608; &#1593;&#1576;&#1575;&#1585;&#1577;&#1613; &#1605;&#1593;&#1610;&#1617;&#1606;&#1577; &#1589;&#1581;&#1610;&#1581;&#1577;&#1611; (<code>true</code>) &#1571;&#1608; &#1582;&#1575;&#1591;&#1574;&#1577; (<code>false</code>) &#1602;&#1583; &#1578;&#1615;&#1587;&#1576;&#1617;&#1576; &#1576;&#1593;&#1590; &#1575;&#1604;&#1575;&#1585;&#1578;&#1576;&#1575;&#1603;.</p><p>&#1601;&#1610;&#1605;&#1575; &#1610;&#1604;&#1610; &#1605;&#1579;&#1575;&#1604; &#1593;&#1606; &#1580;&#1605;&#1604;&#1577; &#1588;&#1585;&#1591;&#1610;&#1617;&#1577; (<code>if</code>) &#1576;&#1587;&#1610;&#1591;&#1577; &#1601;&#1610; JavaScript. &#1578;&#1578;&#1581;&#1585;&#1617;&#1609; &#1575;&#1604;&#1580;&#1605;&#1604;&#1577; &#1605;&#1606; &#1589;&#1581;&#1617;&#1616;&#1577; &#1575;&#1604;&#1593;&#1583;&#1583; <code>1</code>&#1563; &#1608;&#1604;&#1571;&#1606;&#1617; <code>1</code> &#1602;&#1610;&#1605;&#1577; <strong>"&#1589;&#1575;&#1574;&#1576;&#1577;" (truthy)</strong>&#1548; &#1601;&#1587;&#1610;&#1615;&#1606;&#1601;&#1617;&#1614;&#1584; &#1575;&#1604;&#1606;&#1617;&#1589; &#1575;&#1604;&#1576;&#1585;&#1605;&#1580;&#1610;&#1617; &#1575;&#1604;&#1608;&#1575;&#1602;&#1593; &#1576;&#1610;&#1606; &#1575;&#1604;&#1602;&#1608;&#1587;&#1610;&#1606; &#1575;&#1604;&#1605;&#1593;&#1603;&#1608;&#1601;&#1610;&#1606; <code>{}</code> &#1576;&#1593;&#1583; &#1580;&#1605;&#1604;&#1577; <code>if</code>.</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">if ( 1 ) {
  // &#1587;&#1610;&#1615;&#1606;&#1601;&#1617;&#1614;&#1584; &#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1605;&#1585;
  log( '1 is truthy' );
}
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/16/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1575;&#1604;&#1581;&#1602;&#1610;&#1602;&#1577; &#1571;&#1606;&#1617; &#1605;&#1593;&#1592;&#1605; &#1575;&#1604;&#1602;&#1610;&#1605; &#1601;&#1610; JavaScript "&#1589;&#1575;&#1574;&#1576;&#1577;"&#1548; &#1576;&#1604; &#1573;&#1606;&#1617; &#1582;&#1605;&#1587; &#1602;&#1610;&#1605;&#1613; &#1601;&#1602;&#1591; &#1601;&#1610; &#1575;&#1604;&#1604;&#1617;&#1594;&#1577; &#1578;&#1615;&#1593;&#1578;&#1576;&#1585; <strong>"&#1582;&#1575;&#1591;&#1574;&#1577;" (falsy)</strong>:</p><ul><li><code>undefined</code> (&#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1605;&#1576;&#1583;&#1574;&#1610;&#1617;&#1577; &#1604;&#1603;&#1617;&#1604; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; &#1610;&#1615;&#1601;&#1585;&#1590; &#1583;&#1608;&#1606; &#1573;&#1587;&#1606;&#1575;&#1583; &#1602;&#1610;&#1605;&#1577; &#1573;&#1604;&#1610;&#1607;)</li><li><code>null</code></li><li><code>NaN</code> (&#1604;&#1610;&#1587; &#1593;&#1583;&#1583;&#1611;&#1575; "not a number")</li><li><code>0</code> (&#1575;&#1604;&#1593;&#1583;&#1583; &#1589;&#1601;&#1585;)</li><li><code>''</code> (&#1587;&#1604;&#1587;&#1604;&#1577; &#1606;&#1589;&#1617;&#1610;&#1617;&#1577; &#1601;&#1575;&#1585;&#1594;&#1577;)</li></ul><p>&#1593;&#1606;&#1583;&#1605;&#1575; &#1606;&#1585;&#1610;&#1583; &#1578;&#1581;&#1585;&#1617;&#1610; "&#1582;&#1591;&#1571;" &#1602;&#1610;&#1605;&#1577; &#1605;&#1575;&#1548; &#1606;&#1587;&#1578;&#1582;&#1583;&#1605; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604; <code>!</code>:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var a = '';

if ( !a ) {
  // &#1604;&#1606; &#1610;&#1615;&#1606;&#1601;&#1617;&#1614;&#1584; &#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1605;&#1585; &#1573;&#1606; &#1603;&#1575;&#1606;&#1578; a &#1589;&#1575;&#1574;&#1576;&#1577;
  log( 'a was falsy' );
}
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/filuso/1/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1571;&#1605;&#1617;&#1575; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; <code>NaN</code> &#1601;&#1604;&#1607;&#1575; &#1608;&#1590;&#1593;&#1612; &#1582;&#1575;&#1589;&#1617;&#1548; &#1601;&#1593;&#1606;&#1583; &#1578;&#1581;&#1585;&#1617;&#1610;&#1607;&#1575; &#1601;&#1610; &#1580;&#1605;&#1604;&#1577; &#1588;&#1585;&#1591;&#1610;&#1617;&#1577; &#1576;&#1587;&#1610;&#1591;&#1577; &#1601;&#1573;&#1606;&#1617;&#1607;&#1575; &#1582;&#1575;&#1591;&#1574;&#1577;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var notANumber = 'four' - 'five';

if ( !notANumber ) {
  // &#1587;&#1610;&#1615;&#1601;&#1617;&#1614;&#1584; &#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1605;&#1585;
  log( '!notANumber was truthy' );
}
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/18/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1571;&#1605;&#1617;&#1575; &#1593;&#1606;&#1583;&#1605;&#1575; &#1606;&#1602;&#1575;&#1585;&#1606; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; <code>NaN</code> &#1605;&#1593; <code>false</code>&#1548; &#1601;&#1573;&#1606;&#1617;&#1606;&#1575; &#1606;&#1581;&#1589;&#1604; &#1593;&#1604;&#1609; &#1602;&#1610;&#1605;&#1577; "&#1582;&#1575;&#1591;&#1574;&#1577;":</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">var notANumber = 'four' - 'five';

if ( notANumber == false ) {
  // &#1604;&#1606; &#1610;&#1615;&#1606;&#1601;&#1617;&#1614;&#1584; &#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1605;&#1585;
  log( 'notANumber was falsy' );
} else {
  // &#1587;&#1615;&#1610;&#1606;&#1601;&#1617;&#1614;&#1584; &#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1605;&#1585;
  log( 'notANumber was truthy' );
}
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/19/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><p>&#1605;&#1606; &#1575;&#1604;&#1605;&#1607;&#1605;&#1617; &#1571;&#1606; &#1606;&#1578;&#1584;&#1603;&#1617;&#1585; &#1571;&#1606;&#1617; &#1603;&#1604;&#1617; &#1575;&#1604;&#1602;&#1610;&#1605; &#1575;&#1604;&#1571;&#1582;&#1585;&#1609; &#1605;&#1575; &#1593;&#1583;&#1575; &#1575;&#1604;&#1582;&#1605;&#1587; &#1575;&#1604;&#1587;&#1617;&#1575;&#1576;&#1602;&#1577; &#1578;&#1615;&#1593;&#1578;&#1576;&#1585; &#1589;&#1575;&#1574;&#1576;&#1577;&#1548; &#1576;&#1605;&#1575; &#1601;&#1610; &#1584;&#1604;&#1603; &#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578; &#1575;&#1604;&#1601;&#1575;&#1585;&#1594;&#1577; &#1608;&#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; &#1575;&#1604;&#1601;&#1575;&#1585;&#1594;&#1577; &#1608;&#1603;&#1604; &#1575;&#1604;&#1587;&#1617;&#1604;&#1575;&#1587;&#1604; &#1575;&#1604;&#1606;&#1617;&#1589;&#1610;&#1617;&#1577; &#1594;&#1610;&#1585; &#1575;&#1604;&#1601;&#1575;&#1585;&#1594;&#1577; (&#1605;&#1578;&#1590;&#1605;&#1617;&#1606;&#1577; &#1575;&#1604;&#1587;&#1604;&#1587;&#1604;&#1577; &#1575;&#1604;&#1606;&#1617;&#1589;&#1610;&#1617;&#1577; <code>'0'</code>) &#1608;&#1603;&#1604;&#1617; &#1575;&#1604;&#1571;&#1593;&#1583;&#1575;&#1583; &#1605;&#1575; &#1593;&#1583;&#1575; <code>0</code>.</p><p><em>&#1605;&#1604;&#1575;&#1581;&#1592;&#1577;: &#1605;&#1606; &#1575;&#1604;&#1605;&#1605;&#1603;&#1606; &#1603;&#1578;&#1575;&#1576;&#1577; &#1580;&#1605;&#1604;&#1577; &#1588;&#1585;&#1591;&#1610;&#1617;&#1577; &#1601;&#1610;&#1607;&#1575; <code>if</code> &#1608;<code>else</code> &#1601;&#1610; &#1587;&#1591;&#1585; &#1608;&#1575;&#1581;&#1583;&#1613; &#1583;&#1608;&#1606; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1575;&#1604;&#1571;&#1602;&#1608;&#1575;&#1587; &#1575;&#1604;&#1605;&#1593;&#1603;&#1608;&#1601;&#1577;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617; &#1607;&#1584;&#1607; &#1575;&#1604;&#1605;&#1605;&#1575;&#1585;&#1587;&#1577; &#1594;&#1610;&#1585; &#1605;&#1601;&#1590;&#1617;&#1604;&#1577; &#1604;&#1571;&#1606;&#1617;&#1607;&#1575; &#1578;&#1580;&#1593;&#1604; &#1602;&#1585;&#1575;&#1569;&#1577; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580; &#1608;&#1589;&#1610;&#1575;&#1606;&#1578;&#1607; &#1571;&#1589;&#1593;&#1576;&#1563; &#1608;&#1605;&#1575; &#1584;&#1603;&#1585;&#1606;&#1575;&#1607;&#1575; &#1607;&#1606;&#1575; &#1573;&#1604;&#1617;&#1575; &#1604;&#1571;&#1606;&#1617;&#1607;&#1575; &#1602;&#1583; &#1578;&#1589;&#1575;&#1583;&#1601;&#1603; &#1593;&#1606;&#1583; &#1602;&#1585;&#1575;&#1569;&#1577; &#1576;&#1585;&#1575;&#1605;&#1580; &#1605;&#1591;&#1608;&#1617;&#1585;&#1610;&#1606; &#1570;&#1582;&#1585;&#1610;&#1606;.</em></p><h2 id="-logical-operators-">&#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1616;&#1604;&#1575;&#1578; &#1575;&#1604;&#1605;&#1606;&#1591;&#1602;&#1610;&#1617;&#1577; (Logical Operators)</h2><p>&#1578;&#1587;&#1605;&#1581; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &#1575;&#1604;&#1605;&#1606;&#1591;&#1602;&#1610;&#1617;&#1577; &#1576;&#1578;&#1602;&#1610;&#1610;&#1605; &#1591;&#1585;&#1601;&#1610;&#1617; &#1575;&#1604;&#1593;&#1605;&#1604;&#1610;&#1617;&#1577; &#1575;&#1604;&#1605;&#1606;&#1591;&#1602;&#1610;&#1617;&#1577; &#1576;&#1578;&#1606;&#1601;&#1610;&#1584; &#1593;&#1605;&#1604;&#1610;&#1578;&#1610;&#1617; AND (<code>&amp;&amp;</code>) &#1608;OR (<code>||</code>).</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var foo = 1;
var bar = 0;
var baz = 2;

foo || bar;     // &#1578;&#1615;&#1593;&#1610;&#1583; 1 &#1608;&#1607;&#1610; &#1602;&#1610;&#1605;&#1577; &#1589;&#1575;&#1574;&#1576;&#1577;
bar || foo;     // &#1578;&#1615;&#1593;&#1610;&#1583; 1 &#1608;&#1607;&#1610; &#1602;&#1610;&#1605;&#1577; &#1589;&#1575;&#1574;&#1576;&#1577;

foo &amp;&amp; bar;     // &#1578;&#1615;&#1593;&#1610;&#1583; 0 &#1608;&#1607;&#1610; &#1602;&#1610;&#1605;&#1577; &#1582;&#1575;&#1591;&#1574;&#1577;
foo &amp;&amp; baz;     // &#1578;&#1615;&#1593;&#1610;&#1583; 2 &#1608;&#1607;&#1610; &#1602;&#1610;&#1605;&#1577; &#1589;&#1575;&#1574;&#1576;&#1577;</pre><p>&#1601;&#1610; &#1581;&#1575;&#1604;&#1577; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604; <code>||</code>&#1548; &#1578;&#1603;&#1608;&#1606; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1583;&#1577; &#1607;&#1610; &#1571;&#1608;&#1617;&#1604; &#1602;&#1610;&#1605;&#1577; &#1578;&#1615;&#1579;&#1576;&#1578; &#1589;&#1581;&#1617;&#1577; &#1575;&#1604;&#1580;&#1615;&#1605;&#1604;&#1577;&#1548; &#1571;&#1608; &#1570;&#1582;&#1585; &#1602;&#1610;&#1605;&#1577;. &#1571;&#1605;&#1617;&#1575; &#1601;&#1610; &#1581;&#1575;&#1604;&#1577; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604; <code>&amp;&amp;</code> &#1601;&#1573;&#1606;&#1617; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1583;&#1577; &#1578;&#1603;&#1608;&#1606; &#1571;&#1608;&#1617;&#1604; &#1602;&#1610;&#1605;&#1577; &#1578;&#1615;&#1579;&#1576;&#1578; &#1582;&#1591;&#1571; &#1575;&#1604;&#1580;&#1605;&#1604;&#1577;&#1548; &#1571;&#1608; &#1570;&#1582;&#1585; &#1602;&#1610;&#1605;&#1577;.</p><p>&#1602;&#1583; &#1578;&#1585;&#1609; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604;&#1575;&#1578; &#1575;&#1604;&#1605;&#1606;&#1591;&#1602;&#1610;&#1617;&#1577; &#1578;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1576;&#1571;&#1587;&#1604;&#1608;&#1576; &#1584;&#1603;&#1610;&#1617; &#1604;&#1604;&#1578;&#1617;&#1581;&#1603;&#1617;&#1605; &#1576;&#1587;&#1610;&#1585; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">foo &amp;&amp; bar();   // &#1575;&#1587;&#1578;&#1583;&#1593;&#1616; &#1575;&#1604;&#1583;&#1575;&#1604;&#1617;&#1577; bar &#1601;&#1602;&#1591; &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1603;&#1608;&#1606; foo &#1589;&#1575;&#1574;&#1576;&#1577;

var bar = baz || createBar();  // &#1575;&#1587;&#1578;&#1582;&#1583;&#1605; baz &#1603;&#1602;&#1610;&#1605;&#1577; &#1604;&#1600;bar &#1573;&#1604;&#1617;&#1575; &#1573;&#1606; &#1603;&#1575;&#1606;&#1578;
                               // &#1582;&#1575;&#1591;&#1574;&#1577;&#1548; &#1608;&#1593;&#1606;&#1583;&#1607;&#1575; &#1571;&#1606;&#1588;&#1574; bar</pre><p>&#1607;&#1584;&#1575; &#1575;&#1604;&#1571;&#1587;&#1604;&#1608;&#1576; &#1580;&#1605;&#1610;&#1604; &#1608;&#1605;&#1615;&#1582;&#1578;&#1589;&#1585;&#1548; &#1608;&#1604;&#1603;&#1606;&#1617;&#1607; &#1602;&#1583; &#1610;&#1586;&#1610;&#1583; &#1602;&#1585;&#1575;&#1569;&#1577; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580; &#1589;&#1593;&#1608;&#1576;&#1577;&#1611;&#1548; &#1582;&#1589;&#1608;&#1589;&#1611;&#1575; &#1604;&#1604;&#1605;&#1576;&#1578;&#1583;&#1574;&#1610;&#1606;. &#1593;&#1604;&#1610;&#1603; &#1571;&#1606; &#1578;&#1578;&#1593;&#1604;&#1617;&#1605;&#1607; &#1604;&#1578;&#1593;&#1585;&#1601;&#1607; &#1601;&#1610; &#1576;&#1585;&#1575;&#1605;&#1580; &#1575;&#1604;&#1570;&#1582;&#1585;&#1610;&#1606;&#1548; &#1608;&#1604;&#1603;&#1606;&#1606;&#1617;&#1606;&#1610; &#1571;&#1606;&#1589;&#1581;&#1603; &#1576;&#1575;&#1604;&#1606;&#1571;&#1610; &#1593;&#1606; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605;&#1607; &#1601;&#1610; &#1575;&#1604;&#1576;&#1583;&#1575;&#1610;&#1577;&#1548; &#1608;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <code>if</code> &#1608;<code>else</code> &#1575;&#1604;&#1578;&#1617;&#1602;&#1604;&#1610;&#1583;&#1610;&#1617;&#1578;&#1610;&#1606; &#1604;&#1571;&#1606;&#1617;&#1607;&#1605;&#1575; &#1571;&#1608;&#1590;&#1581;.</p><h2 id="-ternary-operator-">&#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1616;&#1604; &#1575;&#1604;&#1579;&#1617;&#1604;&#1575;&#1579;&#1610; (Ternary Operator)</h2><p>&#1593;&#1575;&#1583;&#1577;&#1611; &#1605;&#1575; &#1578;&#1585;&#1594;&#1576; &#1576;&#1578;&#1593;&#1610;&#1610;&#1606; &#1602;&#1610;&#1605;&#1577; &#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; &#1576;&#1581;&#1587;&#1576; &#1589;&#1581;&#1617;&#1577; &#1588;&#1585;&#1591; &#1605;&#1593;&#1610;&#1617;&#1606; &#1571;&#1608; &#1582;&#1591;&#1574;&#1616;&#1607;&#1548; &#1576;&#1573;&#1605;&#1603;&#1575;&#1606;&#1603; &#1576;&#1575;&#1604;&#1591;&#1617;&#1576;&#1593; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; <code>if</code> &#1608;<code>else</code>:</p><p><strong>&#1578;&#1581;&#1584;&#1610;&#1585;: &#1571;&#1587;&#1604;&#1608;&#1576; &#1594;&#1610;&#1585; &#1605;&#1615;&#1601;&#1590;&#1617;&#1604;</strong></p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var propertyName;

if (dim === 'width') {
  propertyName = 'clientWidth';
} else {
  propertyName = 'clientHeight';
}</pre><p>&#1573;&#1604;&#1617;&#1575; &#1571;&#1606;&#1617; &#1575;&#1604;&#1605;&#1615;&#1593;&#1575;&#1605;&#1604; &#1575;&#1604;&#1579;&#1617;&#1604;&#1575;&#1579;&#1610;&#1617; &#1610;&#1587;&#1605;&#1581; &#1576;&#1578;&#1581;&#1602;&#1610;&#1602; &#1575;&#1604;&#1594;&#1575;&#1610;&#1577; &#1584;&#1575;&#1578;&#1607;&#1575; &#1576;&#1591;&#1585;&#1610;&#1602;&#1577; &#1576;&#1571;&#1587;&#1604;&#1608;&#1576; &#1571;&#1602;&#1589;&#1585; &#1608;&#1571;&#1608;&#1590;&#1581;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var propertyName = ( dim === 'width' ) ? 'clientWidth' : 'clientHeight';</pre><p>&#1578;&#1615;&#1578;&#1581;&#1585;&#1617;&#1614;&#1609; &#1575;&#1604;&#1580;&#1605;&#1604;&#1577; &#1602;&#1576;&#1604; <code>?</code> &#1604;&#1605;&#1593;&#1585;&#1601;&#1577; &#1589;&#1608;&#1575;&#1576;&#1607;&#1575;&#1548; &#1601;&#1573;&#1606; &#1603;&#1575;&#1606;&#1578; &#1589;&#1575;&#1574;&#1576;&#1577; &#1571;&#1615;&#1587;&#1606;&#1583;&#1578; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1571;&#1608;&#1604;&#1609; (<code>clientWidth</code>) &#1573;&#1604;&#1609; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585; <code>propertyName</code>&#1548; &#1608;&#1573;&#1604;&#1617;&#1575; &#1571;&#1615;&#1587;&#1606;&#1616;&#1583;&#1578; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1579;&#1617;&#1575;&#1606;&#1610;&#1577; (<code>clientWidth</code>) &#1573;&#1604;&#1610;&#1607;.</p><h2 id="-javascript">&#1593;&#1579;&#1585;&#1575;&#1578; JavaScript</h2><p>&#1576;&#1575;&#1604;&#1573;&#1590;&#1575;&#1601;&#1577; &#1573;&#1604;&#1609; &#1606;&#1591;&#1575;&#1602;&#1575;&#1578; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1608;&#1575;&#1604;&#1578;&#1617;&#1581;&#1585;&#1617;&#1610; &#1605;&#1606; &#1575;&#1604;&#1589;&#1617;&#1581;&#1577;&#1548; &#1607;&#1606;&#1575;&#1604;&#1603; &#1575;&#1604;&#1593;&#1583;&#1610;&#1583; &#1605;&#1606; &#1575;&#1604;&#1593;&#1579;&#1585;&#1575;&#1578; &#1575;&#1604;&#1571;&#1582;&#1585;&#1609; &#1601;&#1610; JavaScript&#1548; &#1608;&#1587;&#1606;&#1604;&#1602;&#1610; &#1606;&#1592;&#1585;&#1577; &#1593;&#1604;&#1609; &#1576;&#1593;&#1590;&#1607;&#1575;.</p><h3 id="-">&#1578;&#1587;&#1605;&#1610;&#1577; &#1575;&#1604;&#1571;&#1588;&#1610;&#1575;&#1569;</h3><p>&#1578;&#1576;&#1583;&#1571; &#1575;&#1604;&#1571;&#1587;&#1605;&#1575;&#1569; &#1575;&#1604;&#1587;&#1617;&#1604;&#1610;&#1605;&#1577; &#1601;&#1610; JavaScript &#1576;&#1581;&#1585;&#1601; &#1571;&#1608; &#1576;&#1585;&#1605;&#1586; &#1605;&#1615;&#1593;&#1610;&#1617;&#1606;&#1548; &#1605;&#1578;&#1576;&#1608;&#1593;&#1613; &#1571;&#1608; &#1594;&#1610;&#1585; &#1605;&#1578;&#1576;&#1608;&#1593; &#1576;&#1581;&#1585;&#1608;&#1601; &#1571;&#1608; &#1571;&#1585;&#1602;&#1575;&#1605; &#1571;&#1608; &#1593;&#1604;&#1575;&#1605;&#1575;&#1578; _ &#1571;&#1608; &#1585;&#1605;&#1608;&#1586; &#1571;&#1582;&#1585;&#1609;. &#1604;&#1575; &#1610;&#1605;&#1603;&#1606; &#1571;&#1606; &#1578;&#1576;&#1583;&#1571; &#1575;&#1604;&#1571;&#1587;&#1605;&#1575;&#1569; &#1576;&#1571;&#1585;&#1602;&#1575;&#1605; &#1571;&#1608; &#1571;&#1606; &#1578;&#1578;&#1590;&#1605;&#1617;&#1606; &#1573;&#1588;&#1575;&#1585;&#1577; &#1575;&#1604;&#1606;&#1617;&#1575;&#1602;&#1589; (-). &#1587;&#1605;&#1617;&#1616; &#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1585;&#1575;&#1578; &#1576;&#1575;&#1604;&#1571;&#1587;&#1605;&#1575;&#1569; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1581;&#1604;&#1608; &#1604;&#1603; &#1591;&#1575;&#1604;&#1605;&#1575; &#1575;&#1604;&#1578;&#1586;&#1605;&#1578; &#1576;&#1607;&#1584;&#1607; &#1575;&#1604;&#1602;&#1608;&#1575;&#1593;&#1583;&#1548; &#1608;&#1607;&#1584;&#1607; &#1575;&#1604;&#1571;&#1587;&#1605;&#1575;&#1569; &#1603;&#1604;&#1617;&#1607;&#1575; &#1587;&#1604;&#1610;&#1605;&#1577;:</p><ul><li><code>a</code></li><li><code>a1</code></li><li><code>foo_bar</code></li><li><code>fooBarBaz</code></li><li><code>$fooBar</code></li><li><code>_foo</code></li><li><code>__foo__</code></li></ul><p>&#1608;&#1590;&#1593; &#1605;&#1580;&#1578;&#1605;&#1593; JavaScript &#1576;&#1593;&#1590; &#1575;&#1604;&#1571;&#1593;&#1585;&#1575;&#1601; &#1575;&#1604;&#1588;&#1617;&#1575;&#1574;&#1593;&#1577; &#1604;&#1578;&#1587;&#1605;&#1610;&#1577; &#1575;&#1604;&#1605;&#1615;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1608;&#1575;&#1604;&#1582;&#1589;&#1575;&#1574;&#1589; &#1601;&#1610; JavaScript&#1548; &#1604;&#1603;&#1606;&#1617;&#1607;&#1575; &#1605;&#1615;&#1580;&#1585;&#1617;&#1614;&#1583; &#1571;&#1593;&#1585;&#1575;&#1601;&#1548; &#1601;&#1607;&#1610; &#1604;&#1610;&#1587;&#1578; &#1573;&#1604;&#1586;&#1575;&#1605;&#1610;&#1617;&#1577;&#1548; &#1608;&#1604;&#1575; &#1578;&#1572;&#1579;&#1617;&#1585; &#1601;&#1610; &#1593;&#1605;&#1604; &#1575;&#1604;&#1576;&#1585;&#1606;&#1575;&#1605;&#1580;:</p><ul><li>&#1575;&#1604;&#1571;&#1587;&#1605;&#1575;&#1569; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1576;&#1583;&#1571; &#1576;&#1600;<code>_</code> &#1578;&#1615;&#1588;&#1610;&#1585; &#1593;&#1575;&#1583;&#1577;&#1611; &#1573;&#1604;&#1609; &#1602;&#1610;&#1605; &#1587;&#1585;&#1617;&#1616;&#1610;&#1617;&#1614;&#1577; (private) (&#1587;&#1606;&#1608;&#1590;&#1617;&#1616;&#1581; &#1584;&#1604;&#1603; &#1604;&#1575;&#1581;&#1602;&#1611;&#1575;).</li><li>&#1575;&#1604;&#1571;&#1587;&#1605;&#1575;&#1569; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1576;&#1583;&#1571; &#1576;&#1581;&#1585;&#1601; &#1603;&#1576;&#1610;&#1585; &#1607;&#1610; &#1593;&#1575;&#1583;&#1577;&#1611; &#1583;&#1608;&#1575;&#1604; &#1605;&#1615;&#1588;&#1610;&#1617;&#1583;&#1577; (constructors) &#1578;&#1615;&#1587;&#1578;&#1582;&#1583;&#1605; &#1604;&#1573;&#1606;&#1588;&#1575;&#1569; &#1606;&#1615;&#1587;&#1582; &#1580;&#1583;&#1610;&#1583;&#1577; &#1605;&#1606; &#1575;&#1604;&#1603;&#1575;&#1574;&#1606;&#1575;&#1578; (&#1587;&#1606;&#1608;&#1590;&#1617;&#1581; &#1584;&#1604;&#1603; &#1604;&#1575;&#1581;&#1602;&#1611;&#1575; &#1571;&#1610;&#1590;&#1611;&#1575;).</li><li>&#1601;&#1610; &#1575;&#1604;&#1576;&#1585;&#1575;&#1605;&#1580; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1587;&#1578;&#1582;&#1583;&#1605; jQuery&#1548; &#1575;&#1604;&#1571;&#1587;&#1605;&#1575;&#1569; &#1575;&#1604;&#1617;&#1578;&#1610; &#1578;&#1576;&#1583;&#1571; &#1576;&#1575;&#1604;&#1585;&#1617;&#1605;&#1586; <code>$</code> &#1578;&#1615;&#1588;&#1610;&#1585; &#1593;&#1575;&#1583;&#1617;&#1577; &#1573;&#1604;&#1609; &#1603;&#1575;&#1574;&#1606;&#1575;&#1578; jQuery.</li></ul><h3 id="-reserved-words-">&#1575;&#1604;&#1603;&#1604;&#1605;&#1575;&#1578; &#1575;&#1604;&#1605;&#1581;&#1580;&#1608;&#1586;&#1577; (Reserved words)</h3><p>&#1578;&#1581;&#1578;&#1601;&#1592; JavaScript &#1604;&#1606;&#1601;&#1587;&#1607;&#1575; &#1576;&#1576;&#1593;&#1590; &#1575;&#1604;&#1603;&#1604;&#1605;&#1575;&#1578; &#1575;&#1604;&#1617;&#1578;&#1610; &#1610;&#1601;&#1590;&#1617;&#1604; &#1575;&#1580;&#1578;&#1606;&#1575;&#1576;&#1607;&#1575; &#1603;&#1571;&#1587;&#1605;&#1575;&#1569; &#1604;&#1605;&#1603;&#1608;&#1617;&#1606;&#1575;&#1578; &#1576;&#1585;&#1575;&#1605;&#1580;&#1603;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">abstract boolean break byte case catch char class const continue debugger
default delete do double else enum export extends false final finally float
for function goto if implements import in instanceof int interface long
native new null package private protected public return short static super
switch synchronized this throw throws transient true try typeof var
volatile void while with</pre><p>&#1601;&#1573;&#1606;&#1617; &#1603;&#1575;&#1606; &#1604;&#1575; &#1576;&#1583;&#1617; &#1605;&#1606; &#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605;&#1607;&#1575; &#1603;&#1575;&#1587;&#1605; &#1604;&#1582;&#1575;&#1589;&#1617;&#1577; &#1603;&#1575;&#1574;&#1606;&#1548; &#1601;&#1593;&#1604;&#1610;&#1603; &#1573;&#1581;&#1575;&#1591;&#1578;&#1607;&#1575; &#1576;&#1593;&#1604;&#1575;&#1605;&#1578;&#1610; &#1575;&#1602;&#1578;&#1576;&#1575;&#1587;:</p><pre data-pbcklang="javascript" data-pbcktabsize="" class="javascript ipsCode prettyprint">var myObject = {
  'class': 'tasty'
};</pre><h3 id="-">&#1575;&#1604;&#1593;&#1605;&#1604;&#1610;&#1617;&#1575;&#1578; &#1593;&#1604;&#1609; &#1575;&#1604;&#1571;&#1593;&#1583;&#1575;&#1583; &#1608;&#1575;&#1604;&#1587;&#1617;&#1604;&#1575;&#1587;&#1604; &#1575;&#1604;&#1606;&#1617;&#1589;&#1610;&#1617;&#1577;</h3><p>&#1575;&#1604;&#1578;&#1617;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1575;&#1604;&#1571;&#1585;&#1602;&#1575;&#1605; &#1601;&#1610; JavaScript &#1602;&#1583; &#1610;&#1615;&#1593;&#1591;&#1610; &#1606;&#1578;&#1575;&#1574;&#1580; &#1594;&#1610;&#1585; &#1605;&#1578;&#1608;&#1602;&#1617;&#1593;&#1577; &#1571;&#1581;&#1610;&#1575;&#1606;&#1611;&#1575;&#1548; &#1576;&#1587;&#1576;&#1576; &#1591;&#1585;&#1610;&#1602;&#1577; &#1578;&#1605;&#1579;&#1610;&#1604; &#1575;&#1604;&#1571;&#1585;&#1602;&#1575;&#1605; &#1583;&#1575;&#1582;&#1604;&#1610;&#1617;&#1611;&#1575; &#1601;&#1610; JavaScript&#1548; &#1601;&#1605;&#1579;&#1604;&#1575;&#1611;: &#1593;&#1606;&#1583; &#1580;&#1605;&#1593; &#1593;&#1583;&#1583;&#1610;&#1606; &#1593;&#1588;&#1585;&#1610;&#1617;&#1610;&#1606;&#1548; &#1578;&#1603;&#1608;&#1606; &#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577; &#1593;&#1583;&#1611;&#1583;&#1575; &#1602;&#1585;&#1610;&#1576;&#1611;&#1575; &#1580;&#1583;&#1617;&#1611;&#1575; &#1605;&#1606; &#1575;&#1604;&#1602;&#1610;&#1605;&#1577; &#1575;&#1604;&#1605;&#1578;&#1608;&#1602;&#1617;&#1593;&#1577;&#1548; &#1604;&#1603;&#1606;&#1617;&#1607; &#1594;&#1610;&#1585; &#1605;&#1587;&#1575;&#1608;&#1613; &#1578;&#1605;&#1575;&#1605;&#1611;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">log( 0.0001 + 0.0002 ); // 0.00030000000000000003</pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/20/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a><br><script src="http://static.jsbin.com/js/embed.js"></script></p><p>&#1604;&#1606; &#1578;&#1589;&#1575;&#1583;&#1601; &#1607;&#1584;&#1575; &#1603;&#1579;&#1610;&#1585;&#1611;&#1575; &#1593;&#1606;&#1583; &#1575;&#1604;&#1593;&#1605;&#1604; &#1605;&#1593; jQuery&#1548; &#1608;&#1604;&#1603;&#1606;&#1617;&#1607;&#1575; &#1602;&#1590;&#1610;&#1617;&#1577; &#1605;&#1607;&#1605;&#1617;&#1577; &#1610;&#1580;&#1576; &#1575;&#1604;&#1575;&#1606;&#1578;&#1576;&#1575;&#1607; &#1604;&#1607;&#1575; &#1582;&#1589;&#1608;&#1589;&#1611;&#1575; &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1578;&#1593;&#1575;&#1605;&#1604; &#1605;&#1593; &#1571;&#1585;&#1602;&#1575;&#1605;&#1613; &#1593;&#1588;&#1585;&#1610;&#1617;&#1577; &#1603;&#1575;&#1604;&#1593;&#1605;&#1604;&#1575;&#1578;. &#1593;&#1606;&#1583;&#1605;&#1575; &#1578;&#1615;&#1580;&#1585;&#1610; &#1593;&#1605;&#1604;&#1610;&#1617;&#1575;&#1578; &#1581;&#1587;&#1575;&#1576;&#1610;&#1617;&#1577; &#1578;&#1581;&#1578;&#1575;&#1580; &#1583;&#1602;&#1617;&#1577; &#1578;&#1575;&#1605;&#1617;&#1577;&#1548; &#1601;&#1593;&#1604;&#1610;&#1603; &#1578;&#1581;&#1608;&#1610;&#1604; &#1575;&#1604;&#1602;&#1610;&#1605; &#1573;&#1604;&#1609; &#1571;&#1593;&#1583;&#1575;&#1583; &#1589;&#1581;&#1610;&#1581;&#1577; &#1602;&#1576;&#1604; &#1575;&#1604;&#1593;&#1605;&#1604; &#1576;&#1607;&#1575;&#1548; &#1579;&#1605;&#1617; &#1578;&#1581;&#1608;&#1610;&#1604;&#1607;&#1575; &#1579;&#1575;&#1606;&#1610;&#1577;&#1611; &#1573;&#1604;&#1609; &#1571;&#1593;&#1583;&#1575;&#1583; &#1593;&#1588;&#1585;&#1610;&#1617;&#1577; &#1576;&#1593;&#1583; &#1575;&#1604;&#1575;&#1606;&#1578;&#1607;&#1575;&#1569;.</p><p>&#1578;&#1578;&#1587;&#1575;&#1605;&#1581; JavaScript &#1605;&#1593; &#1575;&#1582;&#1578;&#1604;&#1575;&#1601; &#1575;&#1604;&#1571;&#1606;&#1608;&#1575;&#1593;&#1548; &#1601;&#1593;&#1606;&#1583; &#1573;&#1580;&#1585;&#1575;&#1569; &#1593;&#1605;&#1604;&#1610;&#1575;&#1578; &#1581;&#1587;&#1575;&#1576;&#1610;&#1577; &#1576;&#1575;&#1587;&#1578;&#1582;&#1583;&#1575;&#1605; &#1602;&#1610;&#1605; &#1594;&#1610;&#1585; &#1593;&#1583;&#1583;&#1610;&#1617;&#1577;&#1548; &#1601;&#1604;&#1606; &#1578;&#1615;&#1576;&#1604;&#1594;&#1603; JavaScript &#1576;&#1608;&#1580;&#1608;&#1583; &#1582;&#1591;&#1571;&#1548; &#1576;&#1604; &#1587;&#1578;&#1615;&#1578;&#1575;&#1576;&#1593; &#1575;&#1604;&#1593;&#1605;&#1604;&#1610;&#1617;&#1577; &#1605;&#1615;&#1593;&#1591;&#1610;&#1577;&#1611; &#1606;&#1578;&#1575;&#1574;&#1580; &#1602;&#1583; &#1604;&#1575; &#1578;&#1578;&#1608;&#1602;&#1617;&#1593;&#1607;&#1575;:</p><pre data-pbcklang="javascript" data-pbcktabsize="4" class="javascript ipsCode prettyprint">log( 'a' + 2 );           // 'a2'
log( '4' + 3 );           // '43'
log( 'five' - '4' );      // NaN (not a number)
log( - '1' );             // -1
log( 1 + true );          // 2
log( 1 == true );         // true
log( 1 === true );        // false
<script src="http://static.jsbin.com/js/embed.js"></script></pre><p><a rel="external nofollow" href="http://jsbin.com/wavipizone/21/edit?js,console">&#1575;&#1604;&#1606;&#1617;&#1578;&#1610;&#1580;&#1577;</a></p><h2 id="-">&#1605;&#1591;&#1575;&#1604;&#1593;&#1577;</h2><p>&#1604;&#1605; &#1606;&#1582;&#1590; &#1601;&#1610; &#1571;&#1593;&#1605;&#1575;&#1602; &#1604;&#1594;&#1577; JavaScript &#1576;&#1593;&#1583;&#1615;. &#1588;&#1576;&#1603;&#1577; &#1605;&#1615;&#1591;&#1608;&#1617;&#1585;&#1610; &#1605;&#1608;&#1586;&#1610;&#1604;&#1617;&#1575; (MDN) &#1605;&#1589;&#1583;&#1585; &#1605;&#1605;&#1578;&#1575;&#1586; (&#1576;&#1575;&#1604;&#1573;&#1606;&#1603;&#1604;&#1610;&#1586;&#1610;&#1617;&#1577;) &#1604;&#1578;&#1593;&#1604;&#1617;&#1605; JavaScript &#1576;&#1578;&#1601;&#1575;&#1589;&#1610;&#1604;&#1607;&#1575;&#1548; &#1608;&#1582;&#1589;&#1608;&#1589;&#1611;&#1575; &#1583;&#1604;&#1610;&#1604; JavaScript &#1593;&#1604;&#1609; &#1575;&#1604;&#1588;&#1617;&#1576;&#1603;&#1577;. &#1571;&#1603;&#1579;&#1585; &#1575;&#1604;&#1605;&#1608;&#1575;&#1590;&#1610;&#1593; &#1571;&#1607;&#1605;&#1617;&#1610;&#1617;&#1577; &#1604;&#1603; &#1575;&#1604;&#1570;&#1606;:</p><ul><li><a rel="external nofollow" href="https://developer.mozilla.org/en/JavaScript/Guide/JavaScript_Overview">&#1606;&#1592;&#1585;&#1577; &#1593;&#1575;&#1605;&#1617;&#1577; &#1593;&#1604;&#1609; JavaScript</a></li><li><a rel="external nofollow" href="https://developer.mozilla.org/en/JavaScript/Guide/Values%2C_Variables%2C_and_Literals">&#1575;&#1604;&#1602;&#1610;&#1605; &#1608;&#1575;&#1604;&#1605;&#1578;&#1594;&#1610;&#1617;&#1585;&#1575;&#1578; &#1608;&#1575;&#1604;&#1605;&#1603;&#1608;&#1617;&#1606;&#1575;&#1578; &#1575;&#1604;&#1581;&#1585;&#1601;&#1610;&#1617;&#1577;</a></li><li><a rel="external nofollow" href="https://developer.mozilla.org/en/JavaScript/Guide/Functions">&#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604;&#1617;</a></li><li><a rel="external nofollow" href="http://benalman.com/news/2010/11/immediately-invoked-function-expression/">&#1593;&#1576;&#1575;&#1585;&#1575;&#1578; &#1575;&#1604;&#1583;&#1617;&#1608;&#1575;&#1604;&#1617; &#1575;&#1604;&#1605;&#1615;&#1587;&#1578;&#1583;&#1593;&#1575;&#1577; &#1601;&#1608;&#1585;&#1611;&#1575;</a></li><li><a rel="external nofollow" href="https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/">&#1575;&#1604;&#1605;&#1589;&#1601;&#1608;&#1601;&#1575;&#1578;</a></li></ul><h2 id="-">&#1605;&#1589;&#1575;&#1583;&#1585; &#1573;&#1590;&#1575;&#1601;&#1610;&#1577;</h2><ul><li><a rel="external nofollow" href="https://developer.mozilla.org/en-US/docs/Web/JavaScript">&#1588;&#1576;&#1603;&#1577; &#1605;&#1615;&#1591;&#1608;&#1617;&#1585;&#1610; &#1605;&#1608;&#1586;&#1610;&#1604;&#1617;&#1575;: JavaScript</a></li><li><a rel="external nofollow" href="https://developer.chrome.com/devtools/index">Chrome Developer Tools Overview</a></li><li><a rel="external nofollow" href="http://fixingthesejquery.com/">Fixing these jQuery: A Guide to Debugging</a></li><li><a rel="external nofollow" href="https://github.com/borismus/DevTools-Lab/raw/master/cheatsheet/chromedev-cheatsheet.pdf">Chrome Developer Tools Cheat Sheet</a></li><li><a rel="external nofollow" href="http://www.youtube.com/watch?v=nOEw9iiopwI">Chrome Dev Tools: 12 Tricks to Develop Quicker (&#1601;&#1610;&#1583;&#1610;&#1608;)</a></li></ul><p><span style="line-height: 22.3999996185303px;">&#1578;&#1585;&#1580;&#1605;&#1577; (&#1576;&#1588;&#1610;&#1569; &#1605;&#1606; &#1575;&#1604;&#1578;&#1589;&#1585;&#1601;)&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1604;&#1580;&#1586;&#1569; &#1575;&#1604;&#1571;&#1608;&#1604; &#1605;&#1606; &#1587;&#1604;&#1587;&#1604;&#1577; &nbsp;</span><a style="line-height: 22.3999996185303px;" rel="external nofollow" href="http://jqfundamentals.com/">jQuery Fundamentals</a><span style="line-height: 22.3999996185303px;">&nbsp;</span><span style="line-height: 22.3999996185303px;">&#1604;&#1605;&#1572;&#1604;&#1617;&#1601;&#1578;&#1607;&#1575;&nbsp;Rebecca Murphey.</span></p>
]]></description><guid isPermaLink="false">59</guid><pubDate>Wed, 08 Apr 2015 12:38:00 +0000</pubDate></item></channel></rss>
