פורסם 2006 ביולי 1419 שנים אני מנסה לעשות setAttribute לאובייקט מסויים(תא של טבלה) וב-FF זה עובד מצויין אך ב-IE משום מה לא.document.getElementById('month1').rows[rowNum].cells[(day-1)%7].setAttribute('onclick','pickit(this);');עשיתי חיפוש בגוגל ומצאתי כל מיני "פתרונות" שלא ממש עבדו.יש לכם מושג מה עושים?מי שרוצה להבין על מה מדובר אז הנה העמודhttp://88.152.174.234/dtpicker/dtpicker.html
פורסם 2006 ביולי 1419 שנים הפתרון הוא -document.getElementById('month1').rows[rowNum].cells[(day-1)%7].onclick='pickit(this);';לא הכי אלגנטי, אבל עובד, מכיוון ש javascript יוצר attribute חדש באופן אוטומטי במקרה ומנסים לבצע אליו השמה.
פורסם 2006 ביולי 1419 שנים מחבר זה אחד הפתרונות שמצאתי בגוגלהבעיה היא שגם הוא לא עובדלא ב-FF ולא ב-IE
פורסם 2006 ביולי 1419 שנים בדוק בבקשה שdocument.getElementById('month1').rows[rowNum].cells[(day-1)%7]מחזיר לך אובייקט שהוא לא Null תחת IE
פורסם 2006 ביולי 1419 שנים תהנה: document.getElementById('month1').rows[rowNum].cells[(day-1)%7].onclick = function() {pickit(this);}; תחליף את השורה בזו. (לא משתמשים ב setAttribute בשביל events). מה זה האתר הזה ?
פורסם 2006 ביולי 1419 שנים מחבר אחלה תודהומה לגביי שתי השורות האלה?document.getElementById('month1').rows[rowNum].cells[(day-1)%7].setAttribute('class','day');document.getElementById('month1').rows[rowNum].cells[(day-1)%7].setAttribute('style','cursor: pointer;');ב-FF עובד אבל ב-IE לא.סתם אתר... יש שם גם פורום שבניתי
פורסם 2006 ביולי 1419 שנים אם אתה יוצר את התאים דינאמית(ע"י innerhtml אולי, לא ראיתי את הקוד):את התאים תיצור סטטית ולא דינאמית. במקום כל פעם לשנות את המאפיין בJS, פשוט תרשום את זה פעם אחת בקוד הHTML. תצטרך לשנות שם חלק מהדברים, אבל אני בטוח שתסתדר. כל פעם תכניס מספרים אחרים לתוך התאים(ואם יום ראשון הוא הראשון לחודש תשאיר שורה ריקה בהתחלה).
פורסם 2006 ביולי 1519 שנים מחבר אני בונה את זה בצורה דינמית: row = document.getElementById('month1').insertRow(rowNum);row.insertCell((day-1)%7).innerHTML = i; (ובשביל מה פסרמתי את הלינק אם לא בשביל שתסתכל על הקוד? ) בכל מקרה אני לא רוצה טבלה קבועה בדיוק מהסיבה שאני לא רוצה להשאיר שורה ריקה. זה פשוט לא יפה. עכשיו למה לעזאזל האקספלורר המעפן הזה לא יודע לעשות setAttribute כמו שצריך? באג ידוע של תאימות ביניהם... עזוב, תעשה שיעבוד רק ל FF תהיה ריאליסטי. זה לא יקרה בעשור הקרוב.
פורסם 2006 ביולי 1519 שנים ומה לגביי שתי השורות האלה?document.getElementById('month1').rows[rowNum].cells[(day-1)%7].setAttribute('class','day');document.getElementById('month1').rows[rowNum].cells[(day-1)%7].setAttribute('style','cursor: pointer;');ב-FF עובד אבל ב-IE לא.אולי אני מפספס משהו, אבל אתה יכול פשוט לעשות:object.className = 'day';object.style = 'cursor: pointer;'(כש-"object" כמובן זה כל הקוד לפני ה-setAttribute אצלך..)בעצם, ה-style מיותר. תכניס אותו ל-class...דוגמה דיי פשוטה יש לך למשל כאן:http://css.somepeople.net/dynamic
פורסם 2006 ביולי 1519 שנים מחבר בעצם, ה-style מיותר. תכניס אותו ל-class...כן זה נכון.בכל מקרה גם זה:object.className = 'day';לא עובד משום מה ב-IEבעצם יותר נכון להגיד ש-CSS לא עובד ב-IEהוא משום מה לא מתייחס ל-hover:div#picker table tbody td.day:hover { background: #eef;}
פורסם 2006 ביולי 1519 שנים תנסה לשנות את זה ל:div#picker table tbody td.day a:hover { background: #eef;}אגב, אל תשכח להגדיר את ה-css של הלינק בסדר הנכון, LVHA (ר"ת של LoVe-HAte, אם אתה מתעקש): link, visited, hover, activeאה, זה לא לינק בכלל..ב-IE אין event של hover על שום דבר אחר שהוא לא לינק..מה שאתה מחפש זה זה:http://www.thescripts.com/forum/thread157439.html
פורסם 2006 ביולי 1519 שנים מחבר אותו דבר לגביי שתי השורות האלה:a#button:hover { background: url('images/dropdown_hover.gif') no-repeat;}a#button:active { background: url('images/dropdown_active.gif') no-repeat;}גם אותן IE לא מבצע
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.