Clark.Pan 发表于 2024-7-22 10:59:31

在线表格编辑器监听Tab的点击事件

本帖最后由 Clark.Pan 于 2024-7-22 11:02 编辑

背景:

用户有需求需要监听在线表格编辑器上方 Tab 对应的点击事件,在事件中做处理。

解决方案:
SpreadJS 源生并没有提供上面 Tab 的点击事件,所以我们需要通过解析 dom 结构自行处理此处。如下图所示,当我们查看网页 dom 元素的时候,我们发现所有的Tab都会有一个 "role" 的属性,且值为"tab"。于是我们可以监听全局的click事件,以此进行判断:
document.body.addEventListener("click",function (event) {
    var target = event.target || event.srcElement;   
    if (target.nodeName.toLocaleLowerCase() === "a") {
      if(target.getAttribute("role") == "tab"){
            //do something you want
            console.log("点击的是:" + target.innerHTML + "tab");
         }
    }
});
通过上述判断,我们就可以监听到tab的点击事件了。


页: [1]
查看完整版本: 在线表格编辑器监听Tab的点击事件