首页 > 解决方案 > 检测没有 getElementById 的按钮单击

问题描述

jupyter中,有一个红色箭头指向的按钮

在此处输入图像描述

可用于调出内部命令调色板

在此处输入图像描述

这实际上是一个输入和一个列表<li>

按钮的关键功能是data-jupyter-action="jupyter-notebook:show-command-palette"

<button class="btn btn-default" title="open the command palette" data-jupyter-action="jupyter-notebook:show-command-palette"><i class="fa-keyboard-o fa"></i></button>

我想我需要一个 javascript 片段来处理data-jupyter-action属性。

通常,脚本可以识别元素,getElementById但此按钮没有Id.

如何检测按钮单击并响应“jupyter-notebook:show-command-palette”操作?

标签: javascriptjupyter-notebook

解决方案


您可以使用 querySelector 代替 getElementById。

querySelector 使用 css 选择器选择元素。

let elem = document.querySelector('[data-jupyter-action="jupyter-notebook:show-command-palette"]');

如果元素存在,这将返回该元素。如果未找到,则返回 undefined。


推荐阅读