جهِّز نفسك لسوالف كاست، واحصل على Macbook Air
ويكيمانيا 2008. الإسكندرية، من 17 وحتى 19 يوليو

 

العودة   سوالف سوفت > قسم تطوير وبرمجة المواقع للمتقدمين > ويب 2.0 و البرمجية القياسية Ajax +XML+ CSS+ JavaScript وغيرها
المدوّنات البحث مشاركات اليوم اجعل كافة المشاركات مقروءة

رد
 
LinkBack أدوات الموضوع
عضو نشيط
تاريخ التسجيل: Jun 2007-
#1 (permalink)  
JQuery درس تطبيق قائمة بلوكات منسدله ( بسيط )


درس تطبيق عمل قائمة بلوكات منسدله



السلام عليكم ورحمة الله وبركاته

في مقالة سابقة من مدونتي قمت بشرح مبادئ ونبذه عن مكتبة JQuery الرائعه وبدايه لعملها

وأحببت أن أعمل تطبيق بعض الأمثله لنفهمها ونعرف كيفية استخدامها في مواقعنا

والمثال الأول هو تطبيق قائمات بلوك منسدله

ومن المواقع التي تعمل مثل هذا التأثير هو موقع شركة Apple الشهيرة

http://www.apple.com/startpage


هنا يمكنك مشاهدة مثال على ما سنقوم بتطبيقه





1/ إنشاء المجلد والصفحه

الان نبدأ في التطبيق ننشأ (مجلد جديد) باسم menu_scroll مثلاً

ونضع فيه ملف المكتبة الخاصة بالـ Jquery

jquery.js ( ويمكنك تحميلها من هنا ) ولا تنسى ان تقوم بإعادة تسميتها إلى jquery.js أفضل ليتناسب مع الدرس

ثم ننشأ صفحة الويب التي نريد ان نعمل التأثير فيها

باسم menu_scroll.htm مثلاً



2/ التصميم

نقوم أولاً بتصميم الشكل الذي نريد عمل التأثير عليه

وذالك باستخدام CSS نقوم بكتابة الـ Tags الخاصة بالبلوكات

كود:
<dl>
<dt><a href="">عنوان 1</a></dt>
<dd>
<ul>
<li><a href="">رابط 1</a></li>
<li><a href="">رابط 2</a></li>
<li><a href="">رابط 3</a></li>
</ul>
</dd>
<dt><a href="">عنوان 2</a></dt>
<dd>
<ul>
<li><a href="">رابط 1</a></li>
<li><a href="">رابط 2</a></li>
<li><a href="">رابط 3</a></li>
<li><a href="">رابط 4</a></li>
</ul>
</dd>
<dt><a href="">عنوان 3</a></dt>
<dd>
<ul>
<li><a href="">رابط 1</a></li>
<li><a href="">رابط 2</a></li>
<li><a href="">رابط 3</a></li>
</ul>
</dd>
</dl>
بعدها نعطي الـ Tags ما يناسبها من Style خاص بالـ CSS
فنقوم بكتابة داخل tag الـ <head> الـ tag الخاص بـ Style الـ CSS

كود:
<head>
<style type="text/css">
</style>
</head>
بعدها بدءً من الـ Tag الذي يحتوي على جميع البلوكات <dl> نعطيه مساحة عرض 300 بكسل ونعطي باقي الـ Tags ما يناسبها من style كم في التالي

كود:
dl { width: 300px; }
dl,dd { margin: 0; }
dt { background: #00CCFF; font-size: 18px; padding: 5px; margin: 2px; }
dt a { color: #FFF; }
dd a { color: #000; }
ul { list-style: none; padding: 5px; }
الان وبعد ما انهينا مرحلة التصميم ننتقل إلى >>>




3/ كتابة الأكواد باستخدام مكتبة JQuery

هنا مرحلة كتابة أكواد الجافاسكربت, المتعلقه بمكتبة الـ JQuery



في داخل tag الـ <head> نقوم بتضمين المكتبة داخل الصفحه بكتابة

كود:
<script type="text/javascript" src="jquery.js"></script>


ونبدأ في كتابة الكود في تنفيذ العمليات في الصفحه

كود:
<script type="text/javascript">
 
</script>
وكما تم شرحه سابقاً نقوم بإضافة الكود الخاص بتحميل الأكواد أولاً

كود:
<script type="text/javascript">
$(document).ready(function(){
 
});
</script>
ثم نقوم بكتابة الكود المتعلق بفتح البلوك عند الضغط على احد العناوين

كود:
$("dt a").click(function(){
$("dd").slideUp("slow");
$(this).parent().next().slideDown("slow");
return false; 
});
كتبنا dt a وهذا يعني انه يتم التعامل مع a الذي في داخل dt فقط

لذالك الـ class $ المتعلق بالبحث واختيار الـ Tags سهل واحترافي جداً في مكتبة JQuery

وبالنسبة لـ $("dd").slideUp("slow");
بهذا الكود نقوم بإخفاء جميع البلوكات ببساطه

ثم بـ $(this).parent().next().slideDown("slow");
نقوم بإضهار بالتدريج العنصر الذي يلي العنصر الذي تم الضغط عليه
بحيث هذا الكود $(this).parent() يقوم باختيار العنصر الحالي الذي تم الضغط عليه وعند إضافة next() يتم تحديد العنصر الذي يليه



الان انتهينا من كل شي ما عدا خطوه أخيره

عند فتح الصفحه نود ان نقوم بإضهار اول بلوك وهي عن طريق كتابة الكود التالي

كود:
$("dd:not(:first)").hide();
في أول السطر, والكود معناه أخفي جميع البلوكات ماعدا اول بلوك, وذالك بإضافة ( :not )
و ( :first ) يقوم بتحديد أول tag أو element يحمل اسم dd في الصفحه


# إنتهى #


بإمكانك الإستفاده من الأوامر الخاصة بمكتبة JQuery عن طريق الـ Documentation بالموقع
http://docs.jquery.com
وفي حال ان first يتم اختيار اول Tag أو Element فإن بإمكانك إختيار آخر Tag بكتابة last … وإلى آخره

وبكل بساطه يتم عمل تأثيرات رائعة جداً وبسهوله عن طريق استخدام مكتبة JQuery الرائعه



وفي المقالة التالية سنقوم بعمل تطبيق مثال أكثر إحترافيه لنتعلم المزيد من استخدام JQuery

حيث حالياً أقوم باستخدامها وتعلمها بشكل كبير في برامج تفاعليه بصفحات الويب وسيتم طرحها للاستفاده من اكوادها وطريقة عملها

وخاصة كما هو مكتوب في مدونة الـ JQuery
jQuery Blog

Google Using jQuery

وهذا ان دل فيدل على ان المكتبة رائعه وقويه في الاستخدام

ولاي استفسارات ارحب بها واسأل الله تعالى ان يعيننا جميعاً على العلم النافع والعمل الصالح ...

وإن أخطأت فمن نفسي ومن الشيطان وإن إصبت فمن الله وحده

مع التحيه والتقدير …






أبو فارس غير متواجد حالياً   قديم 02-01-2008, 02:42 PM
رد مع اقتباس
خبير JavaScript
تاريخ التسجيل: Jul 2002-
Blog Entries: 15
#2 (permalink)  

بارك الله فيك، وتقنية جي كويري جائت لتختصر الكثير من الحركيات، وتجعل لغة الجافا سكريبت، شبيهة في تعاملها بلغة التطبيقات، خصوصا ان بها مكتبات جاهزة من طرف المطورين، ويمكن لأي واحد له دراية بالجافا سكريبت ان يضيف اليها مكتبته او الخاصة
شكرا لك مرة اخرى على الدرس المميز






Zizwar غير متواجد حالياً   قديم 02-01-2008, 03:26 PM
رد مع اقتباس
مشرف قسم ويب 2.0 و فكرة
تاريخ التسجيل: Jun 2005-
#3 (permalink)  

ما شاء الله درس جميل جدا

يمكن الاعتماد عليها في مواقع الاستضافة لعرض مميزات الخطط .

بالتوفيق ان شاء الله






__________________
- مدوناتـ مشرفينـ سوالفـ سوفتـ
Aldirazi | الشرياني | المسعودي | فضفضة | Flasher | الازد | مليباري | قناص النطاقات
owner متواجد حالياً   قديم 02-01-2008, 04:18 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#4 (permalink)  

اخي Zizwar أشكرك جزيلاً على إضافتك المتميزه كعادتك
وكلامك الذي فيه من الدرر والمعلومات الرائعه بكل وضوح

الاخ العزيز owner

بالفعل يمكن الاعتماد بها بشكل جميل في مواقع الاستظافة خاصة لو تم استخدام mouseover() بدل click() مثل طريقة موقع Apple



وألف تحيه وتقدير وألف شكر على التثبيت ...






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 02-01-2008, 09:54 PM
رد مع اقتباس
عضو سوبر نشيط
تاريخ التسجيل: Apr 2006-
#5 (permalink)  

اشكراك بعنف
بارك الله فيك وجزاك كل خير






__________________

Remano متواجد حالياً   قديم 03-01-2008, 01:03 AM
رد مع اقتباس
عضو جديد
تاريخ التسجيل: May 2007-
#6 (permalink)  

شرح اكثر من رائع

تقبل تحياتي ...






delesibs غير متواجد حالياً   قديم 03-01-2008, 02:42 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#7 (permalink)  

Remano, delesibs

اشكر لكم مروركم الرائع

ونحن في الخدمه






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 03-01-2008, 02:10 PM
رد مع اقتباس
عضو نشيط جدا
تاريخ التسجيل: May 2007-
#8 (permalink)  

من أفضل مكتبات الـ Javascript على الإطلاق ،، شكراً لك .






asaamas غير متواجد حالياً   قديم 03-01-2008, 10:52 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#9 (permalink)  

asaamas

شكراً لك على مرورك وعلى تعليقك الجميل






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 04-01-2008, 12:04 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Sep 2007-
#10 (permalink)  

بارك الله فيك يالغالي






طآلب علم غير متواجد حالياً   قديم 06-01-2008, 08:45 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#11 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة طآلب علم مشاهدة المشاركة
بارك الله فيك يالغالي
الله يعافيك ويسلمك






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 07-01-2008, 11:08 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Nov 2005-
#12 (permalink)  

مشكور ابو فارس

عجبني اختيارك للـ dl






-b7- غير متواجد حالياً   قديم 08-01-2008, 10:34 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#13 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة -b7- مشاهدة المشاركة
مشكور ابو فارس

عجبني اختيارك للـ dl
شكراً لك أخوي -b7- على مرورك وعلى تعقيبك الجميل

لمن لا يعرف dl هي Tag تستخدم في HTML أو XHTML عندما نريد استخدام قائمة تعريفية

لمعرفة المزيد W3Schools - HTML <dl> tag






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 09-01-2008, 09:40 AM
رد مع اقتباس
عضو نشيط جدا
تاريخ التسجيل: May 2007-
#14 (permalink)  

لقد تعمقت قليلاً في تعلّم الـ jQuery ،، وبالفعل من أجمل ما رأيت .. حاولت تجريبها قبل فترة لكني أهملتها والآن عادت إلى الواجهة ،، أكرر شكري لك أخي العزيز أبو فارس







التعديل الأخير تم بواسطة : asaamas بتاريخ 10-01-2008 الساعة 02:13 AM.
asaamas غير متواجد حالياً   قديم 10-01-2008, 02:12 AM
رد مع اقتباس
عضو نشيط جدا
تاريخ التسجيل: May 2006-
#15 (permalink)  

يديك العافيه ابو فارس

ابسالك سؤال

اللحين عندنا هذا كود الحدث ينطلق مع الكليك

كود:
$("dt a").click(function(){
$("dd").slideUp("slow");
$(this).parent().next().slideDown("slow");
return false; 
});
كيف اعدله للماوس اوفر

كود:
$("dt a").mouseover(function(){
$("dd").slideUp("slow");
$(this).parent().next().slideDown("slow");
return false; 
});
هل هذا الكود صحيح ؟؟ ومافي اي تعديل ثاني ؟






__________________
*** No spam ***

** الله يرحمك ياحازم ويغفرلك ذنوبك **
ctrl غير متواجد حالياً   قديم 10-01-2008, 04:16 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#16 (permalink)  

حياك الله اخوي asaamas واتمنى لك التوفيق وان شاء الله تكون من محترفين الجافا سكريبت وتطوير المواقع

---

ctrl بالضبط اخوي نفس ما اضفت بالضبط , فقط تكتب بدال الـ event كليك click , ماوس أوفر mouseover وعند مرور الفأرة على العنوان سيتم فتحها منسدله وهذه من مميزات سهولة التعامل مع الـ jquery ووضوحها

تقبل تحياتي






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 10-01-2008, 05:05 PM
رد مع اقتباس
مشرف قسم ويب 2.0 و فكرة
تاريخ التسجيل: Jun 2005-
#17 (permalink)  

اهلا .

قمت بتطبيق الدرس

وهذا تطبيقي
Owner-SandBox
ما رأيك

شكرا لك مرة اخرى .






__________________
- مدوناتـ مشرفينـ سوالفـ سوفتـ
Aldirazi | الشرياني | المسعودي | فضفضة | Flasher | الازد | مليباري | قناص النطاقات
owner متواجد حالياً   قديم 10-01-2008, 06:35 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#18 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة owner مشاهدة المشاركة
اهلا .

قمت بتطبيق الدرس

وهذا تطبيقي
Owner-SandBox
ما رأيك

شكرا لك مرة اخرى .
روعه اخوي owner كما انني جربت عمل mouseover واصبحت اروع بكثير وانصحك بتجربتها لو اححبت استخدامها

مع اطيب تحياتي وبرمجه موفقه






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 11-01-2008, 01:22 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Dec 2004-
#19 (permalink)  

رائع جدا ان تشرح jQuery ، لقد استخدمنا مكتبة jQuery في مواقع العملاء و هذا نموذج لصفحه
استخدمنا فيها هذه المكتبة الرائعه :
Yanbu Gate for Industrial Services

فعلا هي مكتبه اختصرت الكثير لتعطي نتائج اكثر من رائعه






__________________
المروه.نت تقديم خدمات تقنية المعلومات و التجارة الالكترونية
www.almarwa.net.sa
al-marwa غير متواجد حالياً   قديم 11-01-2008, 11:35 AM
رد مع اقتباس
مشرف قسم ويب 2.0 و فكرة
تاريخ التسجيل: Jun 2005-
#20 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة أبو فارس مشاهدة المشاركة
روعه اخوي owner كما انني جربت عمل mouseover واصبحت اروع بكثير وانصحك بتجربتها لو اححبت استخدامها

مع اطيب تحياتي وبرمجه موفقه
Owner-SandBox

Mouse Over

شكرا لك .
استمتعت بالتطبيق

لكن الـوسم <dd> وين نستخدمه باختصار؟ <<انجليزيته زيرو






__________________
- مدوناتـ مشرفينـ سوالفـ سوفتـ
Aldirazi | الشرياني | المسعودي | فضفضة | Flasher | الازد | مليباري | قناص النطاقات
owner متواجد حالياً   قديم 11-01-2008, 11:55 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#21 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة al-marwa مشاهدة المشاركة
رائع جدا ان تشرح jQuery ، لقد استخدمنا مكتبة jQuery في مواقع العملاء و هذا نموذج لصفحه
استخدمنا فيها هذه المكتبة الرائعه :
Yanbu Gate for Industrial Services

فعلا هي مكتبه اختصرت الكثير لتعطي نتائج اكثر من رائعه
رائع جداً أخوي al-marwa , ونتمنى ان نفيد ونستفيد جميعاً ونفيد بعضنا بعضا , وكما أتمنى لك التوفيق الدائم في أعمالك الجميله

ودمت بود

اقتباس:
المشاركة الأصلية كتبت بواسطة owner مشاهدة المشاركة
Owner-SandBox

Mouse Over

شكرا لك .
استمتعت بالتطبيق

لكن الـوسم <dd> وين نستخدمه باختصار؟ <<انجليزيته زيرو
والله طلعت احلى بكثير اخوي Owner ابدعت يالغالي جلست ألعب فيها ساعه ههههههههههه

بس مافهمت قصدك بـ dd وين نستخدمه باختصار, لكن من شرح W3Schools يبين لك استخدام ( القائمة التعريفية ) اللي تتضمن على dl = عنوان القائمة و dd = محتوى ونقاط القائمة

وهي بكل بساطه تستخدمها إذا أردت أن تعمل قائمة ولكن ما يميزها عن <ul> اللتي هي القائمة المنقطه , هو انها لا تكون منطقه فقط قائمة وفيها تفرعات من دون اي نقط او علامات.

وهنا مثال عليها Definition list

مع أرق التحيات , واي استفسارات اخرى ارحب بها , وان شاء الله سيكون هناك دروس اقوى وأفضل خاصه مع التعامل بالأجاكس والـ XML






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 11-01-2008, 05:52 PM
رد مع اقتباس
عضو نشيط جدا
تاريخ التسجيل: May 2007-
#22 (permalink)  

إستخدام الـ Ajax أصبح أكثر سهولة ومرونة مع jQuery ..
كود PHP:
$.get(
'ajax.php',
name'Ajax'email'ajax@gmail.com' },
function(
result) {
$(
'#result')
.
html(result);
}); 







التعديل الأخير تم بواسطة : asaamas بتاريخ 11-01-2008 الساعة 08:33 PM.
asaamas غير متواجد حالياً   قديم 11-01-2008, 08:23 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#23 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة asaamas مشاهدة المشاركة
إستخدام الـ Ajax أصبح أكثر سهولة ومرونة مع jQuery ..
كود PHP:
$.get(
'ajax.php',
name'Ajax'email'ajax@gmail.com' },
function(
result) {
$(
'#result')
.
html(result);
}); 
صح اخوي asaamas والله اسهل بكثير واروع , بس خربت علينا الدرس الجاي وعطيتنا الزبده يا asaamas خخخخخخخخخخخ

لا والله امزح معك تسلم على هالكود الجميل اللي يشرح العمليه بشكل سهل

برضوا ان شاءا لله راح احاول اقدم الشروح الجايه بشكل اكبر وادق للأي مبتدأ






__________________
عبدالملك عبدالله الثاري
http://www.althari.com

التعديل الأخير تم بواسطة : أبو فارس بتاريخ 11-01-2008 الساعة 09:42 PM.
أبو فارس غير متواجد حالياً   قديم 11-01-2008, 09:40 PM
رد مع اقتباس
عضو فعال
تاريخ التسجيل: Jun 2002-
#24 (permalink)  

السلام عليكم..

درس جميل جدا..
بارك الله فيك..

مكتبة رائعة فعلا.. (^_^)


تحياتي






PHP-Master02 غير متواجد حالياً   قديم 17-01-2008, 02:58 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Jun 2007-
#25 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة PHP-Master02 مشاهدة المشاركة
السلام عليكم..

درس جميل جدا..
بارك الله فيك..

مكتبة رائعة فعلا.. (^_^)


تحياتي
حياك الله اخوي PHP-Master02






__________________
عبدالملك عبدالله الثاري
http://www.althari.com
أبو فارس غير متواجد حالياً   قديم 26-01-2008, 01:13 PM
رد مع اقتباس
رد


أدوات الموضوع

تعليمات المشاركة
لا تستطيع كتابة مواضيع
لا تستطيع كتابة ردود
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة


المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
تطبيق عملي بسيط للـphp مع MySQL ( للمبتدئين ) alkha6ar PHP 14 13-08-2005 06:03 AM
درس صنع قائمة احترافية >> ترجمته لكم jalal قسم التصميم والرسومات والمونتاج 11 08-03-2005 02:10 PM
درس عمل سكريبت upload بسيط !! اللهلوب PHP 23 09-01-2005 07:49 PM
درس كيفية عمل تذهيب ثلاثي الأبعاد بسيط بالفوتوشوب -1- b happy قسم التصميم والرسومات والمونتاج 18 29-11-2004 10:06 AM


الساعة الآن: 03:52 AM بتوقيت المملكة العربية السعودية