研究调查问卷:请告诉我们您使用 Blockly 的体验
开始调查问卷
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
blockly > utils > browserEvents > conditionalBind
utils.browserEvents.conditionalBind() 函数
绑定一个事件处理脚本,如果它不是活跃触摸流的一部分,则可以被忽略。此属性适用于开始或继续多部分手势的事件(例如 mousedown 或 mousemove,可能属于拖动或点击的一部分)。
Signature:
export declare function conditionalBind(node: EventTarget, name: string, thisObject: object | null, func: Function, opt_noCaptureIdentifier?: boolean): Data;
参数
参数 |
类型 |
说明 |
节点 |
EventTarget |
要监听的节点。 |
name |
字符串 |
要监听的事件名称(例如“mousedown”)。 |
thisObject |
object | null |
函数中的“this”的值。 |
func |
函数 |
在事件触发时调用的函数。 |
opt_noCaptureIdentifier |
布尔值 |
(可选)如果在此事件上触发时不应阻止对此轻触或其他同时轻触的其他事件处理程序的执行,则为 true。默认值为 false。 |
返回:
数据
可传递给 unbindEvent_ 的不透明数据。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-25。
[null,null,["最后更新时间 (UTC):2025-07-25。"],[[["\u003cp\u003e\u003ccode\u003eutils.browserEvents.conditionalBind()\u003c/code\u003e allows binding event handlers that can be selectively ignored based on touch stream activity, making it suitable for multi-part gestures like dragging or clicking.\u003c/p\u003e\n"],["\u003cp\u003eThe function takes parameters for the target node, event name, function to execute, context (\u003ccode\u003ethis\u003c/code\u003e value), and an optional flag to control blocking behavior.\u003c/p\u003e\n"],["\u003cp\u003eIt returns an opaque data object that can be later used to unbind the event using \u003ccode\u003eunbindEvent_\u003c/code\u003e.\u003c/p\u003e\n"]]],["The `conditionalBind` function binds an event handler to a specified node. It takes the node, event name, a `this` object, the handler function, and an optional boolean to control blocking of other event handlers. When the event is triggered, the provided function is executed. This is intended for events related to multi-part gestures. It returns data used for unbinding the event later. This allows to control whether to block execution of other handlers for touches.\n"],null,["[blockly](./blockly.md) \\\u003e [utils](./blockly.utils_namespace.md) \\\u003e [browserEvents](./blockly.utils_namespace.browserevents_namespace.md) \\\u003e [conditionalBind](./blockly.utils_namespace.browserevents_namespace.conditionalbind_1_function.md)\n\nutils.browserEvents.conditionalBind() function\n----------------------------------------------\n\nBind an event handler that can be ignored if it is not part of the active touch stream. Use this for events that either start or continue a multi-part gesture (e.g. mousedown or mousemove, which may be part of a drag or click).\n\n**Signature:** \n\n export declare function conditionalBind(node: EventTarget, name: string, thisObject: object | null, func: Function, opt_noCaptureIdentifier?: boolean): Data;\n\nParameters\n----------\n\n| Parameter | Type | Description |\n|-------------------------|----------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| node | EventTarget | Node upon which to listen. |\n| name | string | Event name to listen to (e.g. 'mousedown'). |\n| thisObject | object \\| null | The value of 'this' in the function. |\n| func | Function | Function to call when event is triggered. |\n| opt_noCaptureIdentifier | boolean | *(Optional)* True if triggering on this event should not block execution of other event handlers on this touch or other simultaneous touches. False by default. |\n\n**Returns:**\n\n[Data](./blockly.browserevents_namespace.data_typealias.md)\n\nOpaque data that can be passed to unbindEvent_."]]