ראשי > dhtml חוצה דפדפניםמאמר חלק 3 > אפשרות לשינוי עמוד

הוספת האפשרות לשינוי עמוד

נוסיף כעת את הפונקציות למעבר לעמוד קודם או לעמוד הבא. פונקציות אלה משתמשות בהצהרת switch כדי להחליט  איזה תוכן ייטען כעת, תלוי בעמוד הנוכחי שנטען. העמוד הנוכחי מוחזק בתוך משתנה גלובלי. הקוד עבור הפונקציות למעבר לעמוד הקודם או לעמוד הבא מופיע בבלוק הקוד:


LAYERWIDTH = 500;
current_page = "part1.htm";

// pull in "next" page of article
function next_page() {
   switch(current_page) {
case "part1.htm" :
current_page = "part2.htm";
break;
      case "part2.htm" :
current_page = "part3.htm";
break;
      default :
current_page = "part1.htm";
}
   wdvlObjs["content"].objChangeSource(current_page,LAYERWIDTH);
}

// pull in previous page of article
function prev_page() {
   switch(current_page) {
case "part1.htm" :
current_page = "part3.htm";
break;
      case "part2.htm" :
current_page = "part1.htm";
break;
      default :
current_page = "part2.htm";
}
wdvlObjs["content"].objChangeSource(current_page,LAYERWIDTH);
}
 

שים לב שרוחב העמוד נשמר גם הוא כקבוע גלובלי, ומועבר לאובייקט החדש.  

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

לעמוד הקודם      לעמוד הראשי        לעמוד הבא