您可以透過工具提示和說明網址提供區塊說明。
工具提示
當使用者將滑鼠游標懸停在區塊上時,工具提示會提供即時協助。如果文字過長,系統會自動換行。
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);
如需範例,請參閱自訂工具提示示範。
說明網址
區塊可與相關聯的說明頁面建立關聯。使用者只要在區塊上按一下滑鼠右鍵,然後從內容選單中選取「說明」,即可使用這項功能。如果這個值為 null
,則不會顯示「說明」項目。
JSON
{
// ...,
"helpUrl": "https://en.wikipedia.org/wiki/For_loop"
}
JavaScript
init: function() {
// ...
this.setHelpUrl('https://en.wikipedia.org/wiki/For_loop');
}
使用 JavaScript API 時,區塊可以指定函式,而非傳回網址字串的靜態字串,因此可提供動態說明。