ראשי > dhtml חוצה דפדפנים > מאמר חלק 1 > הבדלים בין דפדפנים
<DIV id="test" style="position:absolute; left: 100; top: 150">
some contents
</DIV>
ניתן ללחוץ כאן כדי לראות את הקוד בפעולה
שינוי מיקום האלמנט תוך שימוש ב-JavaScript
יכול להיעשות בטכניקה הבאה:
document.test.left = 10;
document.test.top = 10;
document.layers["test"].left = 10;
document.layers["test"].top = 10;
למיקרוסופט יש דרך שונה ליישום שינויי
HTML
דינמיים. ראשית, ניתן לגשת אל האלמנט דרך מספר
טכניקות. טכניקה אחת היא לגשת אל האלמנט
ישירות לפי שמו או לפי שם מזהה (identifier)
שהוצמד לו. טכניקה שנייה משתמשת ב-all, שהוא חלק אינטגרלי מהעמוד, וניגשת
אל האלמנט ישירות תוך שימוש בשיטה item,
או בעקיפין תוך שימוש בשיטת התגים לגישה
לקבוצת אלמנטים. בנוסף, כל שינוי בעיצוב CSS,
כולל שינוי מיקום, מתבצע דרך העצם או התכונה style.
כך, יישום שינוי במיקום עבור בלוק ה-div,
שהוזכר קודם, ניתן להשיג תוך שימוש ב:
test.style.pixelLeft = 10;
test.style.pixelTop = 10;
או ע"י שימוש בטכניקה:
document.all.item("test").style.pixelLeft = 10;
document.all.item("test").style.pixelTop = 10;
מיקרוסופט תומכת ביותר מתכונה אחת
שמייצגת את מיקומו של השמאלי של אלמנט. ב-IE
4.0 התכונה “left”
היא בעצם מחרוזת עם יחידת מידה. כדי לתת ערך
בפיקסלים לתכונות top
או left,
על המפתח להשתמש בתכונות pixelLeft
או pixelTop.
if (navigator.appName == "Microsoft Internet Explorer") {
test.style.pixelLeft = 10;
test.style.pixelTop = 10;
}
else {
document.layers["test"].left = 10;
document.layers["test"].top = 10;
}
זהו סוג של שגרת עבודה של בחינה ולאחריה
שינוי. הצורך לחזור על בדיקת הדפדפן בכל פעם
שתרצה להשתמש ב-DHTML
יכול להיות מעייף. בנוסף, אם אחד הדפדפנים
משנה את הטכניקה שלו, כל מימוש של DHTML
יצטרך לעבור שינוי, ועל השינוי להתבצע בכל
עמוד אינטרנט שבו יושם המימוש.