אתם יכולים לספק עזרה לגבי החסימה באמצעות כלי עזר וכתובת URL לעזרה.
הסברים קצרים
הסברים קצרים מספקים עזרה מיידית כשהמשתמש מעביר את העכבר מעל הבלוק. אם הטקסט ארוך, הוא יתפרס באופן אוטומטי.
JSON
{
// ...,
"tooltip": "Tooltip text."
}
JavaScript
init: function() {
this.setTooltip("Tooltip text.");
}
ב-JavaScript API, אפשר להגדיר תיאורי כלים גם כפונקציה במקום כמחרוזת סטטית. כך אפשר לקבל עזרה דינמית. בקטע math_arithmetic
מופיעה דוגמה להסבר שמשתנה בהתאם לאפשרות שנבחרה בתפריט הנפתח.
JavaScript
Blockly.Blocks['math_arithmetic'] = {
init: function() {
// ...
// Assign 'this' to a variable for use in the tooltip closure below.
var thisBlock = this;
this.setTooltip(function() {
var mode = thisBlock.getFieldValue('OP');
var TOOLTIPS = {
'ADD': Blockly.Msg['MATH_ARITHMETIC_TOOLTIP_ADD'],
'MINUS': Blockly.Msg['MATH_ARITHMETIC_TOOLTIP_MINUS'],
'MULTIPLY': Blockly.Msg['MATH_ARITHMETIC_TOOLTIP_MULTIPLY'],
'DIVIDE': Blockly.Msg['MATH_ARITHMETIC_TOOLTIP_DIVIDE'],
'POWER': Blockly.Msg['MATH_ARITHMETIC_TOOLTIP_POWER']
};
return TOOLTIPS[mode];
});
}
};
באמצעות JavaScript API, אפשר לציין בבלוק פונקציה במקום מחרוזת סטטית, שתחזיר את המחרוזת של ההסבר הקצר. כך אפשר ליצור טיפים דינמיים.
דוגמה מופיעה בקטע math_arithmetic
.
התאמה אישית
אפשר גם להתאים אישית את המראה של ההודעות באמצעות פונקציית עיבוד בהתאמה אישית. יוצרים פונקציה שמקבלת שני פרמטרים:
- קודם כול, רכיב
<div>
שבו תבצעו עיבוד (רנדור) של התוכן - השני, הרכיב בפועל שעליו מעבירים את העכבר ועבורו רוצים להציג את ההסבר הקצר
בגוף הפונקציה, אפשר להציג ב-div כל תוכן שרוצים. כדי לקבל את מחרוזת ההסבר שמוגדר בבלוק שעליו מעבירים את העכבר, אפשר להפעיל את Blockly.Tooltip.getTooltipOfObject(element);
, כאשר element
הוא הפרמטר השני שמופיע למעלה.
לבסוף, צריך לרשום את הפונקציה הזו כדי ש-Blockly תוכל לקרוא לה בזמן המתאים:
Blockly.Tooltip.setCustomTooltip(yourFnHere);
דוגמה לכך מופיעה בהדגמה של תיאורים קצרים מותאמים אישית.
כתובת URL לעזרה
אפשר לשייך לדפים עמודים של עזרה. המשתמשים יכולים ללחוץ לחיצה ימנית על החסימה ולבחור באפשרות 'עזרה' מתפריט ההקשר. אם הערך הוא null
, הפריט 'עזרה' לא יוצג.
JSON
{
// ...,
"helpUrl": "https://en.wikipedia.org/wiki/For_loop"
}
JavaScript
init: function() {
// ...
this.setHelpUrl('https://en.wikipedia.org/wiki/For_loop');
}
באמצעות JavaScript API, אפשר לציין בבלוק פונקציה במקום מחרוזת סטטית, שמחזירה מחרוזת של כתובת URL, וכך לאפשר עזרה דינמית.