שאלה לגבי DROPDOWN , אני יוצר

שאלה לגבי DROPDOWN , אני יוצר

תפריט DHTML ש"נופל" על שדות חיפוש כאשר התפריט ארוך הוא מכסה מעל השדות אך מעל ה DROPDOWN הוא לא מכסה אלא מתחבא מאחוריו, יש למישהו רעיון לפיתרון ? , או שנתקל בזה בעבר..? תודה
 

khaydarin

New member
כן.

זה קורה בגלל שיש להם "עדיפות" על פני שאר האלמנטים (שים לב שזה רק באקספלורר). השיטה הכי טובה היא להסתיר אותם כשמציגים את התפריט ולהחזיר אותם כשסיימת. ואם אני לא טועה, זה קורה רק עם תג select.
 

khaydarin

New member
אתגר קטן.

נסה לשים div מעל select באקספלורר.
 
אפשר גם ליצור אחד כזה

ע"י שימוש ב-CSS+DOM+JS אבל אירוע Onblur יהיה צריך לחשוב קצת כדי לעשות אותו...
 

khaydarin

New member
../images/Emo12.gif

חיית סקריפטים כמוך צריך לחשוב על זה בכלל?
חוצמזה, זה ידוע בתור פאשלה של אקספלורר. הצוות פיתוח התעצל לכתוב לו סט פקדים משלו ומשתמש בזה של המערכת הפעלה (מן הסתם יש סיבה יותר הגיונית מ"התעצלו" ומישהו יטרח לנפנף בה מתוך מחשבה שזה מעניין לי את השמאלית). בשורה התחתונה - אי אפשר לשים שום אלמנט HTML מעל.
 
הצלחתי את האמת ליישם זאת

אבל נתקלתי בבאג מעצבן. אני משתמש במשתנה בשביל לבדוק האם התיבה סגורה או לא (המשתנה בוליאני) כאשר אני לוחץ במקום שהוא לא בשטח של התיבה אז היא נסגרת אבל אם אני שם בתוך המשתנה הבוליאני (קראתי לו bClose) את הערך true אז כאשר אני לוחץ על המקום שדרכו פותחים (השורה של החץ) אז בגלל שנעשים שם שני ארועים(גם האירוע הגלובלי וגם האירוע המקומי) הוא נפתח ונסגר. ואם אני לא שם את הערך true בתוך המשתנה אז במידה וסגרתי את האת התיבה דרך Onblur אז בשביל לפתוח שוב צריך ללחוץ פעמיים על השורה של החץ (פעם אחת כדי להעביר את המשתנה בחזרה ל-true ופעם אחת כדי שהוא יפתח בחזרה) אני מניח שאני יכול להשתמש במשהו אחר בפתיחה ובסגירה במקום המשתנה (בדיקה אמיתית האם הוא פתוח או סגור) אבל לא היה לי כוח אז עזבתי את זה
 
אני השתמשתי בממשק האירועים

של אובייקט window כדי לעשות את אירוע onblur (כי אירוע זה מוגדר אך ורק לפקדי טופס ולא הצלחתי לייצר אוונט משלי (הצלחתי בעצם אבל לא לשייך אותו לאלמנט))
 

khaydarin

New member
../images/Emo6.gif

<meta http-equiv="Content-Type" content="appdivcation/xhtml+xml; charset=UTF-8" />​
לא הסתדר לך עם ul?
 
../images/Emo6.gif

עשיתי ב-EPP ריפלייס לכל הכל הli וכנראה זה החליף גם את זה
עם UL זה עשה לי מרווח גדול שכמה שניסיתי להשתמש ב-padding ו-margin לא הצלחתי להוריד אותו אז עברתי ל-DIV
 

alexparks

New member
...

עשה כך:
getElement....zIndex = getElement....zIndex - 1;​
תפריט הבחירה יקבל zindex נמוך מזה של השכבה (תתאים לקוד הרצוי כמובן)
 
למעלה