Polymer 事件17 Mar 2025 | 4 分钟阅读 Polymer 事件被 Polymer 元素用来与 DOM 树的状态变化通信到父元素。Polymer 使用标准的 DOM API 来创建、分发和监听事件。 Polymer 使用带注解的事件监听器,并将它们定义为 DOM 模板的小块。可以使用模板中的 on-event 注释将它们添加到 DOM 子节点中。 添加事件监听器有两种方法可以添加事件监听器 通过提供一个 listeners 对象,该对象将事件映射到事件处理函数名称,可以将事件监听器添加到宿主元素。 也可以使用以下语法将事件监听器添加到 this.$ 集合中的任何元素 示例添加带注解的事件监听器您可以使用模板中的 on-event 注释将事件监听器添加到本地 DOM 子节点。通过使用这种方法,您不需要给元素一个 id 来绑定事件监听器。 示例添加和删除监听器listen() 和 unlisten() 方法用于命令式地添加和删除监听器。 注意:如果以命令式方式添加了监听器,则必须以命令式方式删除它。这通常在 attached 和 detached 回调中完成。如果使用 listeners 对象或带注解的事件监听器,Polymer 会自动添加和删除事件监听器。 自定义事件您可以使用标准的 CustomEvent 构造函数和宿主元素的 dispatchEvent () 方法来触发或激发自定义事件。 让我们举个例子,从宿主元素触发一个自定义事件。创建一个名为 index.html 的文件,并在其中使用以下代码。 现在,创建另一个名为 custom-event.html 的文件,并在其中使用以下代码。 ![]() 现在,在点击 "Click Here" 按钮后,您可以看到自定义事件的 true 值。 ![]() 手势事件手势事件用于使用户在触摸和移动设备上的交互更加愉快。例如:tap 事件是手势事件的一部分,它在移动和桌面设备上都能一致地触发。 以下是不同支持的手势事件类型列表 表
示例让我们举个例子来演示在模板中使用手势事件类型。创建一个名为 index.html 的文件,并在其中使用以下代码。 创建另一个名为 gesture-event.html 的文件,其中包含以下代码。 输出 在元素中悬停并拖动鼠标,它将显示事件跟踪的进度,如下所示 ![]() 当您停止拖动鼠标时,它将结束元素上的跟踪事件,如下所示 ![]() 下一个主题Polymer 数据系统 |
我们请求您订阅我们的新闻通讯以获取最新更新。