10-02-2013, 14:48
|
|
|
חבר מתאריך: 25.08.03
הודעות: 9,114
|
|
ברור שבגלל זה, זה מה שהסברתי
זה לא הופך למחרוזת! innerHTML זה מאפיין של האובייקט items שמחזיר את תוכן האובייקט כמחרוזת (בהנחה שזהו HTML Node).
תשים לב למס' נקודות בקוד הבא:
1. ניתן לשרשר ביטויים קטנים לביטוי גדול יותר, במקום ליצור משתנים מיותרים עבור פעולה בודדת.
2. כך גם בתנאי של לולאת ה-for, אין צורך לשמור את הערך במשתנה כדי שהתנאי יבדק מול המשתנה. זה חשוב בעיקר במקרים בהם הערך דינמי (עורך המערך יכול להשתנות במהלך פעולת הלולאה - כמובן באם כתבת קוד שעושה זאת, ולא סתם מעצמו).
3. התייחסתי רק להחלפת ערך שם-המחלקה, כיון שלא ברור לי הפרטים הקשורים להעברת האלמנטים.
קוד:
window.onload = function(){
var items = document.getElementById("MenuBar1").getElementsByTagName("div");
for(var i=0; i<items.length; i++)
items[i].className = "headerbar";
}
אגב, במקום לבזבז משאבים בפעולות JS, אתה יכול ליצור קוד CSS פשוט שיעצב בהתאם לצורך.
לדוגמה:
קוד:
/* old design */
.MainMenuBarBackgrounImage {
}
/* new design */
#newMenu .MainMenuBarBackgrounImage {
/* override old attributes */
}
_____________________________________
בניית אתרים
פיתוח יישומי אינטרנט
שמות תחום, אחסון, עיצוב ושירותים נלווים.
פיתוח, שירות,יעוץ והדרכה.
|