הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 22-07-12, 12:13   # 1
Ori The Man
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: חיפה
גיל: 34
הודעות: 3,694
שלח הודעה באמצעות MSN אל Ori The Man Send a message via Skype™ to Ori The Man

Ori The Man לא מחובר  

עזרה בביצוע hide ב jquery

אהלן,
אני עושה מעיין גלריה באמצעות JQUERY ויש לי בעיה כאשר אני עושה hide ו show התמונה מופיעה לפני ה show ורק אז זה עושה את זה
אתם יכולים לראות
http://www.oritheman.net/cms/gal.php#

HTML קוד:
$('#Images').delegate('img','click', function(){
	$('#Left-Side').fadeOut("slow")
	
	$('#Left-Side').fadeIn("slow");
	$('#largeImage').attr('src',$(this).attr('src').replace('thumbs','newsize'));
	$('#description').html($(this).attr('alt'));
איך אפשר שרק אחרי שיבוצע ה hide כל תהליך החלפת התמונה יבוצע
  Reply With Quote
ישן 22-07-12, 12:20   # 2
meshuga
הנהלת הפורום לשעבר
 
meshuga's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 35
הודעות: 7,601

meshuga לא מחובר  

http://api.jquery.com/fadeOut/
תכניס את כל מה שאחרי fadeOut בתור פונקציית callback...תסתכל על הדוגמא שם נראה לי שאתה תבין לבד..זאת עם הAnimation complete
  Reply With Quote
ישן 22-07-12, 20:34   # 3
IgalSt
מנהל פורום, עסק רשום
 
IgalSt's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: המרכז
גיל: 38
הודעות: 1,432
Send a message via Skype™ to IgalSt

IgalSt לא מחובר  

Thumbs down

כמה הערות לגבי קוד ה-jQuery עצמו, כדי לשפר וליעל אותו:

1. מומלץ להשתמש ב- on

2. מומלץ בחום לעשות cache לאובייקטים של jQuery ולא לפזר דולרים על ימין ועל שמאל.

3. כדאי לשרשר מספר פעולות ביחד. אם אתה עושה על אותו האלמנט fadeIn

(4. סטיילינג: תחליט אם אתה משתמש בגרש בודד או גרשיים, ותהיה עקבי)

כך שאת הקוד שלך הייתי משנה ככה:
קוד:
$('#Images').on("click", "img", function(){
	var img = $(this);
	var leftSide = $("#Left-Side");
	leftSide.fadeOut("slow", function(){
                 leftSide.fadeIn("slow");
                 $("#largeImage").attr('src', img.attr("src").replace("thumbs", "newsize"));
                 $("#description").html(img.attr("alt"));
	});
});
  Reply With Quote
ישן 22-07-12, 20:41   # 4
Ori The Man
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: חיפה
גיל: 34
הודעות: 3,694
שלח הודעה באמצעות MSN אל Ori The Man Send a message via Skype™ to Ori The Man

Ori The Man לא מחובר  

תודה רבה לשניכם על העזרה!

בעיה קטנה אחרת
א. שונא אקספלורר!! (למרות שאני משתמש בו חח)
ב.ברגע שאני מבצע עיגול פינות עם CSS (בעזרת PIE כמובן) זה לא עושה פייד,רק בדפדפנים האחרים,מכירים את הבעיה הזאת?
  Reply With Quote
ישן 22-07-12, 21:46   # 5
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

ציטוט:
נכתב במקור על ידי Ori The Man צפה בהודעה
תודה רבה לשניכם על העזרה!

בעיה קטנה אחרת
א. שונא אקספלורר!! (למרות שאני משתמש בו חח)
ב.ברגע שאני מבצע עיגול פינות עם CSS (בעזרת PIE כמובן) זה לא עושה פייד,רק בדפדפנים האחרים,מכירים את הבעיה הזאת?
הPIE הזה זה חרבנה, אם פייסבוק לא עושים פינות עגולות ל IE7/8 גם אתה יכול שלא
  Reply With Quote
ישן 22-07-12, 21:47   # 6
Ori The Man
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: חיפה
גיל: 34
הודעות: 3,694
שלח הודעה באמצעות MSN אל Ori The Man Send a message via Skype™ to Ori The Man

Ori The Man לא מחובר  

ציטוט:
נכתב במקור על ידי בניה צפה בהודעה
הPIE הזה זה חרבנה, אם פייסבוק לא עושים פינות עגולות ל IE7/8 גם אתה יכול שלא
חחחחח אז אתה ממליץ להוריד את זה?
  Reply With Quote
ישן 22-07-12, 23:20   # 7
Itay
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 35
הודעות: 564

Itay לא מחובר  

אם יש לך רקע אחיד מאחורי התמונה, ובא לך להשקיע קצת בקוד אז אתה יכול ליצור פינות מעוגלות ל-IE 7/8 עם תמונה פשוט ואז לעטוף את התמונה ב-div עם position: relative ולהצמיד 4 spanים עם התמונות של הפינות המעוגלות לצדדים עם position: absolute

ואז כשאתה מחליף תמונה אתה משנה את הגודל של ה-div העוטף לפי התמונה החדשה וה-spanים נשארים צמודים לפינות


למרות שאני אישית לא הייתי טורח
  Reply With Quote
ישן 22-07-12, 23:28   # 8
Ori The Man
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: חיפה
גיל: 34
הודעות: 3,694
שלח הודעה באמצעות MSN אל Ori The Man Send a message via Skype™ to Ori The Man

Ori The Man לא מחובר  

אני כניראה יוותר... חחחח

אתם מכירים דרך יצירתית לעשות דפים ע"י query?
אני רוצה להכניס 12 תמונות בעמוד,אני יכול ללכת על הדרך הרגילה והפשוטה עם GET אבל אני רוצה לנסות לעשות את זה עם jquery כדי שלא יהייה רענון בין עמוד לעמוד.
מכירים איזו שיטה טובה?
  Reply With Quote
ישן 23-07-12, 21:16   # 9
Itay
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 35
הודעות: 564

Itay לא מחובר  

אותו דבר כמו שהיית עושה עם PHP+GET, רק שאת המעבר במקום לעשות עם קישור (למעשה, עדיף כן לעשות קישור אבל לדרוס את הפעולה שלו עם JS כדי שגוגל ודפדפנים בלי JS בעקרון יוכלו לעבור עמודים) לעשות עם בקשת ajax
ובהתחשב במה שהוספתי בהערה - הייתי מוסיף פרמטר לכתובת שאתה קורא אליה דרך ה-ajax שאומרת נגיד clean=true ואז מה שיוצג יהיה רק התוכן שאתה באמת צריך להחליף, ככה שגוגל לדוגמא יקרא את זה בלי ה-clean ויראה את כל האתר
  Reply With Quote
ישן 29-07-12, 18:59   # 10
perfeito
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Jul 2012
הודעות: 102

perfeito לא מחובר  

ציטוט:
נכתב במקור על ידי IgalSt צפה בהודעה
כמה הערות לגבי קוד ה-jQuery עצמו, כדי לשפר וליעל אותו:

1. מומלץ להשתמש ב- on

2. מומלץ בחום לעשות cache לאובייקטים של jQuery ולא לפזר דולרים על ימין ועל שמאל.

3. כדאי לשרשר מספר פעולות ביחד. אם אתה עושה על אותו האלמנט fadeIn

(4. סטיילינג: תחליט אם אתה משתמש בגרש בודד או גרשיים, ותהיה עקבי)

כך שאת הקוד שלך הייתי משנה ככה:
קוד:
$('#Images').on("click", "img", function(){
	var img = $(this);
	var leftSide = $("#Left-Side");
	leftSide.fadeOut("slow", function(){
                 leftSide.fadeIn("slow");
                 $("#largeImage").attr('src', img.attr("src").replace("thumbs", "newsize"));
                 $("#description").html(img.attr("alt"));
	});
});
קוד:
function els () {
	var elems = {
		left: $('#Left-Side'),
		large: $('#largeImage'),
		desc: $('#description')
	};
	return (function () {
		return elems;
	}());
}

$('#Images').on("click", "img", function(){
	var self = $(this)
		,	elems = els();

	elems.left.fadeOut('slow', function () {
		var src = self.attr('src').replace('thumbs', 'newsize');
		elems.left.fadeIn('slow');
		elems.large.attr('src', src);
		elems.html(self.attr('alt'));
	});
});
אם כבר, מדברים על מהירות

Last edited by perfeito; 29-07-12 at 19:06.. סיבה: formatting sucks here.
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 21:23.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ