• الرئيسية
  • تعرف علي
  • اتفاقية النشر
  • اتصال
  • خدمات
  • تابع خلاصات المدونة
  • تابعني على تويتر

« طرق التحويل إلى الترميز العالمي utf-8
تأصيلات selecteur في css2.1 و css3 »
7

إظهار محتويات معينة في نافذة أنيقة بـ jQuery

نوفمبر
10

بسم الله الرحمان الرحيم ، البارحة و انا اتجول بين منصات الجافا سكربت ، وجدت منصة lightview التي تعتمد في عملها على مكتبة prototype ، غالبا ما نستعمل هذا التطبيق كمعرض لصور ، أو عرض فيديو ، او أي شيء متسلسل .
في تطبيقاتنا ، قد نريد أن نعمل حركة إظهار نافذة أنيقة بمثل هذا الشكل ، إلا أننا نرى ان تطبيق lightview كبير الحجم ، و فيه خصائص كثيرة قد لا نحتاجها في مرادنا ، كذلك نحاول ان نراعي حجم الصفحة ، قد نكون نستعمل مكتبة jquery في موقعنا ولا نريد ان نكثر المكتبات حتى لا يصبح موقعنا بطيئا جدا ، لذلك حاولت على السريع عمل المراد المبسط بـ jQuery ، حيث أنه لا يكلف أكوادا كثيرة ، و يوفي بالغرض المطلوب ( إظهار محتويات في نافذة انيقة ) ،

مثال : Demo

اضغط هنا لزيارة صفحة المثال

الشرح :

طبعا ، حتى اتمكن من إظهار محتوياتي كما أريد و بكل حرية ، لابد ان تكون النافذة من نوع div عادية ، و ليس من نوافذ الجافا سكربت المعروفة ، لذلك سأستعمل هذا الكود html لعرض النافذة ، وما بداخلها :

<div id="hideshow" >
	<div id="fade"></div>
 
	<div class="popup_block">
		<div class="popup">
			<a id="aa" href="javascript:hideDiv()">
				<img src="images/close.png" class="cntrl" title="أغلق" />
			</a>
			<h3>عنوان</h3>
			<p>هنا المحتوى او النص</p>
 
		</div>
	</div>
</div>

تم استعمال صورة واحدة ، و هي صورة إغلاق النافذة ، ستجدها هنا :
سأجعل للنافذة زرا كالتالي :

<a href="#" id="ee">اضغط هنا لإظهار النافذة</a>

طبعا بعد ملأ الصفحة بالمحتويات ، هذا فقط مثال ،
تنسيقات css :

/*
	** Fez-Soft
	** 2009
 
*/
body {
	height: 100%;
	margin: 0;
	padding: 40px;
	font:  12px tahoma;
	background: #eee;
	position: relative;
}
 
h1 ,  #ee{
	font:24px "times new roman";
}
img {
	border: none;
}
#hideshow {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
#fade {
	background: #000; 
	position: fixed; 
	width: 100%;
	height: 100%;
	filter:alpha(opacity=80);	/* الشفافية من جيل css3 */
	opacity: .80;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; /*--IE 8 شفافية --*/
	left: 0;
	z-index: 10;
}
.popup_block {
	background: #ddd;
	padding: 10px 20px;
	border: 10px solid #fff;
	float: left;
	width: 480px;
	position: fixed;
	top: 20%;
	left: 50%;
	margin: 0 0 0 -250px;
	z-index: 100;
 
}
.popup_block .popup {
	float: right;
	width: 100%;
	background: #fff;
	margin: 10px 0;
	padding: 10px 0;
	border: 1px solid #bbb;
}
.popup h3 {
	margin: 0 0 20px;
	padding: 5px 10px;
	border-bottom: 1px solid #bbb;
	font: 18px "times newroman";
}
.popup p {
	padding: 5px 10px;
	margin: 5px 0;
	font: 12px tahoma;
}
.popup img.cntrl {
	position: absolute;
	right: -20px;
	top: -20px;
}

عادي جدا ، تم استعمال الشفافية فيه من css3 ، بالنسبة لل ie6 لن أضع له أي ترقيع هنا ، مع انني عملته ، لأنني قررت ألا أدعمه في الدروس ، لعلنا نتقدم بمتصفحاتنا و تفكيرنا

بالنسبة لكود jQuery فهو كالتالي :

jQuery.fn.fadeToggle = function(s, fn){
   return (this.is(":visible"))
   ? this.fadeOut(s, fn)
   : this.fadeIn(s, fn);
};
 
$(document).ready(function(){
    $("#hideshow").hide();
    $("#ee").click(function () {
      $("#hideshow").fadeToggle(2000);
	});
	$("#aa").click(function () {
      	$("#hideshow").fadeOut(2000);
    });
});

ملاحظة أخيرة ، لا تعمل الحركة في صفحة لا تستعمل كل الصفحة ، أي تترك مكانا شاغرا غير مستعمل ولو بالتصميم . لأنه بعد استدعاء النافذة ، سيتم إظهارها فقط في هذا الجزء المستعمل من الصفحة في كل المتصفحات ما عدى موزيلا فايرفوكس ، لذلك لتتفادى هذا ، اجعل التصميم أو المحتوى يملأ كل صفحتك .

اتمنى التوفيق للجميع في مشاريعه
و السلام عليكم ورحمة الله وبركاته

الوسوم: jquery, تأثير, تطبيق, محتوى, نافذة

هذه التدوينة نُشرت في الثلاثاء, 10 نوفمبر, 2009 عند 1:22 ص و مصنفة تحت تصنيف JavaScript, Jquery, css , xhtml. يمكنك متابعة أي تعليقات عبر رابط RSS 2.0. يمكنك ترك تعليق, أو تعقيب من مدونتك.

7 من التعليقات لـ “إظهار محتويات معينة في نافذة أنيقة بـ jQuery”

  1. سعد قال:
    10 نوفمبر 2009 عند 7:56 ص

    و الله شيء جميل
    اسمح لي أسألك أخي : هل درست تصميم المواقع في مدرسة خاصة أو مجهود شخصي ؟
    لأنني أريد السير في نفس المجال لكن الأهل ينظرون للأمر باستخفاف (..) أظن أنني أطلت عليك :)
    بالتوفيق أخي و سوف أحاول تطبيق المثال

  2. Fez-Soft قال:
    12 نوفمبر 2009 عند 6:48 ص

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

  3. أحمد قال:
    16 نوفمبر 2009 عند 6:50 ص

    السلام عليكم ورحمة الله وبركاته
    جميل ياخي محمد, لكن ما عملته هو الآتي:
    أنشات 3 ملفات ملف خاص بالــHTML وآخر بالــــ CSS والاخير خاص بـــ js لكن حين تطبيق المثال تفتح لي الصفحة مع وجود النص بشكل كامل والنافذه معا وعند المحاولة بالضغط على زر الاغلاق لا يعمل….. :(
    أرجو التكرم بمساعدتي
    وشكراً

  4. Fez-Soft قال:
    16 نوفمبر 2009 عند 7:28 ص

    أحمد : لا تنس ملف مكتبة jQuery

  5. أحمد قال:
    18 نوفمبر 2009 عند 2:10 ص

    أصبحت 4 ملفات لكن للاسف مازالت النتيجة هي لم تتغير :)

  6. Fez-Soft قال:
    18 نوفمبر 2009 عند 8:55 ص

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

    بالتوفيق احمد

  7. حموديفيتش قال:
    17 فبراير 2010 عند 10:24 م

    صراحه درس في قمة الروعة

    تسلم قلبي

إكتب تعليقك

اضغط هنا لإلغاء الرد.

إذا أردت أن تظهر صورة بجانب اسمك في التعليق ، شارك في خدمة Gravatar .

  • أعجبتك المدونة ؟

    السلام عليكم ، إذا أعجبتك المدونة و تريد أن تدعمني ، يمكنك أن تشتري لي أحد الكتب التي أحتاج قراءتها ، تفضل هنا .
  • تصنيفات

    • css , xhtml
    • JavaScript, Jquery
    • Photoshop, Flash, illustrator
    • PHP
    • خواطر على طريق التطوير
    • عام
  • كلمات مفتاحية

    $each() alert Application Assembler confirm css div html html4 html5 javascript jquery media opacity PHP prompt screen Top xhtml أفكار إخفاء إظهار استدعاء تأثير تسريع تصميم تطبيق تفصيل تنسيق توافق توزيع ثلاثي أبعاد حقوق روابط زجاجي صفحات عميل فكرة قائمة قالب قواعد متفرعة مشاريع مصمم مطور
  • الأرشيف

    • فبراير 2010
    • يناير 2010
    • ديسمبر 2009
    • نوفمبر 2009
    • أكتوبر 2009
    • سبتمبر 2009
    • أغسطس 2009
    • يوليو 2009
    • يونيو 2009
    • مايو 2009
  • روابط

    • Fez-Soft creation website
    • مدونة محمد بدوي
    • مدونة محمد شاطر
    • مدونة يزيد
    • نقطة بداية

© Fez-Soft Blog

    All right reserved , Theme By Fez-Soft , RSS posts , RSS comments .
  • تعرف علي
  • اتفاقية النشر
  • خدمات
  • اتصال
  • الرئيسية
عن Fez-Soft
mohammed chater مرحبا ، اسمي محمد شاطر ، Mohammed chater , أعرف تحت مسمى Fez-Soft, طالب و مصمم و مطور تطبيقات ، من فاس المغرب . . يمكنك أن تتعرف علي اكثر من هنا ، أو متابعة حسابي على twitter ، ستجد في هذه المدونة دروسا تطويرية للمستوى المتقدم في تصميم الويب ، و البرمجة بالـ JavaScript , يمكنك متابعتها من خلال الخلاصات ، كما يمكنك أن تراسلني من هنا ، لو دعت الضرورة لذلك ، آمل ان يكون وقتك في المدونة لك ، لا عليك .
الأكثر زيارة
  • فضلا .. لا تستعمل Framework css
  • الخطوط العربية : قواعد ، أفكار و حيل
  • تطبيقات hover على عناصر text و ليس صور
  • مدونة جديدة ، بأفكار بسيطة
  • قائمة أفقية ، مع تحديد title بـ jQuery بطريقة فريدة
  • ترقيعات css ، الجمل الشرطية ، بالتفصيل الممل
آخر التعليقات
  • بث مباشر justena  : شكرا على الدروس الرائعة...
  • blogger creator  : درس رائع...
  • karim  : اجو ان تشرح في درس ما هي اهم المميزت في الويب 2....
  • samir de casa  : merci a bo rass had chi zwian...
  • مهند  : الف شكر حبيبي...