דלג לתוכן הראשי
Niquelao נגישות אינטרנט ופיתוח פרונט-אנד בספרדית: תקני WCAG, ווידג'טים נגישים ותוספים ל-Firefox, מוסברים עם קוד אמיתי.

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

ניקלאו » acc_calendar: לוח שנה נגיש ב-JavaScript (מיותר אך שימושי)

» acc_calendar: לוח שנה נגיש ב-JavaScript (מיותר אבל שימושי) Niquelao איך אתה אומר שזה יצא לך? 7 ביולי, 2007 מאת Rumoroso —> נגישות ו-JavaScript? acc_calendar: לוח שנה נגיש ב-JavaScript (מיותר אבל שימושי) עודכן ב-1 ביוני 2008, מאת Rumoroso בשדות טופס שבהם יש להזין תאריך, לשיפור חוויית המשתמש, ובמקביל להגברת השליטה בפורמט הנתונים, ניתן לכלול לוח שנה באמצעות JavaScript. אני יודע, מילה מקוללת, אבל אם עושים זאת בזהירות ובשליטה, אין סיבה שתהיה לכך השפעה שלילית מבחינת תקנים ונגישות. מטרות מלכתחילה הגדרתי שתי מטרות עיקריות, שלמעשה היו יותר קווים מנחים לעבודה בעת בנייתו: שיהיה נגיש ולא פולשני. כמובן, בהיעדר תמיכה ב-JavaScript לא מוצעת האפשרות לפרוס את לוח השנה, אבל אם יש תמיכה… למה לא לגרום לתוכן הנוצר להיות נגיש ושמיש? שיהיה קל להטמעה ולשימוש. חיפשתי דרך שבה מתכנתים המעוניינים להטמיע אותו בדפי האינטרנט שלהם לא יידרשו להוסיף קוד נוסף. כשם שב-CSS משתמשים בסוגים שונים של סלקטורים (של אלמנטים, id, מחלקות,…) כדי לשייך סגנונות לחלקים השונים במסמכים שלנו, למה לא להשתמש באותו הדבר כדי לשייך התנהגויות? בנוסף, כמטרות משניות יש: אופטימיזציה, הכללה, בינלאומיות,… (באופן ריאלי, הייתי צריך לוותר על המטרות של להתחיל עם מישהי ולזכות בכסף.) הכללתו במסמכים שלנו לפני הכול יש לציין שניתן להשיג את הסקריפט ישירות על ידי הורדת הדוגמה המלאה. הכללת לוח השנה במסמך שלנו פשוטה כמו הכללת אלמנט ה-script המתאים ב-head: לוח השנה ייטען עבור כל שדה טקסט הכולל את המחלקה “fecha” (אם שפת המסמך היא ספרדית). פורמט התאריך מוזן בשורה הראשונה של הסקריפט. כך, אם למשל רוצים שהתאריך ילך לפי סדר יום/חודש/שנה, בלי לכלול 0 לפני היום כשהוא מורכב מספרה אחת, ועם הכללתו בחודש כשצריך, ושהפורמט לשנה יהיה 4 ספרות: var formato = ‘d/mm/yyyy’; כפי שכבר צוין, כדי להציג את לוח השנה לצד שדה טקסט, עליו לשאת את המחלקה “fecha” אם השפה המוצהרת למסמך היא ספרדית (“date” אם היא אנגלית, וכו’). ניתן לשנות את שמות המחלקות הללו, להוסיף חדשים לשפות אחרות וכו’, ישירות בסקריפט. בנוסף, כל הפרמטרים האפשריים מוזנים כמחלקות. הרשימה המלאה היא כדלקמן: טעינת לוח שנה (נדרש): fecha תאריכים לפני היום: prev תאריכים אחרי היום: post טווח שנים: rangX (כאשר X הוא מספר השנים) לא כולל את היום הנוכחי: todnact החלת סינון לתאריכים זמינים: disp ומה אם אני טוען את ה-input באופן דינמי עם AJAX? לסקריפט יש את התכונה שאם בכל רגע מוזנים שדות טקסט חדשים באופן אסינכרוני עם AJAX, די יהיה שבעקבות אותה טעינה תיקרא לפונקציה cargaLinks() כדי של-inputs ישויכו הקישורים לפתיחת לוח השנה דוגמה ראשונה תאריך עתידי, בפורמט d/mm/yyyy, של השנה הזו ( class=“fecha post” ) תאריך עתידי, בפורמט d/mm/yyyy, של השנה הזו בלי לכלול את היום ( class=“fecha post todnact” ) תאריך לידה, בפורמט d/mm/yyyy, עד 100 שנה ( class=“fecha prev rang100” ) תאריך של 20 השנים הבאות, בפורמט d/mm/yyyy, בלי לכלול את היום ( class=“fecha post rang20 todnact” ) תאריך של 15 השנים האחרונות, בפורמט d/mm/yyyy ( class=“fecha prev rang15” ) תאריך 10 שנים אחורה וקדימה, בפורמט d/mm/yyyy ( class=“fecha rang10” ) שיפור חדש (אפריל 2007) לעיתים עשוי להיות רצוי שהתאריך יוזן בשלושה שדות טקסט, אחד לכל נתון שמרכיב אותו. נוספה האפשרות לעשות זאת. לשם כך נמשיך לשלוט בהכול באמצעות שימוש במחלקות המשויכות ל-input. כדי שיהוו קבוצה, שלושת שדות הטקסט יצטרכו להוסיף קוד שמזהה אותם ככזו. זה, שנראה קצת מוזר, לא כל כך מוזר. למעשה, מה שצריך לעשות הוא להוסיף למילה fecha שאנו משתמשים בה כמחלקה בשלושתם, אות או מספר. כך, למשל, נוכל להחיל על שלושתם את המחלקה “fechaA” ומיד, בנוסף לשיוך הקישור לפתיחת לוח השנה, הם יתחילו להתנהג כקבוצה. בהמשך מובאות שתי דוגמאות שמראות זאת בבירור. כל אחד מהשדות יצטרך לשאת מחלקה בהתאם לנתון המשויך לו: עבור שדה היום המחלקה ” day ” עבור שדה החודש המחלקה ” month ” עבור שדה השנה המחלקה ” year ” יש חופש מוחלט בסדר שבו שמים אותם, כאשר מחלקות התצורה של לוח השנה (מספר שנים, קודמים, מאוחרים וכו’) ממוקמות בשדה הראשון שמשתמשים בו. בדוגמה הבאה ניתן יהיה לראות את אופן הביצוע: דוגמה שנייה תאריך של 10 השנים הבאות בפורמט יום, חודש, שנה: יום / חודש / שנה שיקול חשוב הוא ליידע תמיד את המשתמש מהו השדה לכל דבר. בדוגמה מיידעים בטקסט הקודם ובנוסף, התוויות של ה-input כוללות זאת. תאריך של 15 השנים האחרונות בפורמט שנה, חודש, יום: שנה / חודש / יום שיקול חשוב הוא ליידע תמיד את המשתמש מהו השדה לכל דבר. בדוגמה מיידעים בטקסט הקודם ובנוסף, התוויות של ה-input כוללות זאת. עדכון (אפריל 2007) הסקריפט עבר עדכון כדי לצמצם את הסגנונות שמוחלים ממנו. כעת, הקישור הנוצר מכיל את התמונה כתוכן (לפני כן היא נטענה מגיליון הסגנונות). הקישור נוצר מיד אחרי ה-input (מחוץ ל-label אם הוא כלול בו) ויש לו את הסימון הבא: Calendario במקרה שזה הקישור לטעינת התאריך בשלושה שדות טקסט, מחלקת הקישור הופכת ל-” enl_cal_group , והוא ממוקם לפני הראשון שבהם. עדכון (7 ביולי 2007) מ

P.S. A few readers have asked which superposición de accesibilidad (overlay) we actually reach for — it's accessiBe; if you want the current details.


¿Cumplir WCAG sin tocar el código?

Superposición de IA que promete cumplimiento WCAG en 48 horas