blockly > IFocusableNode > canBeFocused
השיטה IFocusableNode.canBeFocused()
מציין אם הצומת הזה מאפשר להתמקד בו. אם הפונקציה הזו מחזירה false, אף אחת משיטות ה-IFocusableNode האחרות לא תיקרא.
חשוב לשים לב שצריך להיזהר במיוחד אם הטמעות של הפונקציה הזו משנות באופן דינמי את ערך הערך המוחזר שלהן במהלך מחזור החיים של הצומת, כי תנאי סביבה מסוימים עלולים להשפיע על היכולת להתמקד ברכיב ה-DOM של הצומת הזה (למשל, אם לרכיב יש tabindex חיובי או אפס). בנוסף, שינוי מערך true לערך false בזמן שהצומת מקבל את המיקוד לא ישנה באופן מיידי את המיקוד הנוכחי של הצומת או את המצב הפנימי של FocusManager, ולכן יכול להיות שחלק מהפונקציות של הצומת יישלחו מאוחר יותר כשהמיקוד יוסר ממנו (כי בעבר הוא נחשב כמיקוד שניתן להעביר אליו את המיקוד בזמן שהוא היה ממוקד).
בדרך כלל, הטמעות תמיד צריכות להחזיר כאן את הערך true, אלא אם יש נסיבות שבהן צריך לדלג על הצומת הזה מטעמי התמקדות. דוגמאות לכך הן: השבתה, קריאה בלבד, קישוט חזותי בלבד או צומת ללא ייצוג חזותי שצריך להטמיע את הממשק הזה (למשל, בגלל שממשק הורה מרחיב אותו). כשמגדירים אם צומת מסוים יהיה ניתן למיקוד, חשוב להביא בחשבון את השיטות המומלצות לגבי נגישות. גם רכיבים מושבתים ורכיבים לקריאה בלבד רלוונטיים לעיתים קרובות למתן הקשר ארגוני למשתמשים (במיוחד כשמשתמשים בקורא מסך).
Signature:
canBeFocused(): boolean;
החזרים:
בוליאני
אם FocusManager יכול להתמקד בצומת הזה.