海康威视控件覆盖dom元素问题下拉菜单被覆盖

480 阅读1分钟

描述:引入的海康控件挡住了dom元素

原因:海康控件不属于dom元素,所以无法通过设置 z-index来改变

解决的办法: 可以在菜单显示的时候,将海康控件裁掉一部分裁掉

 if (window.oWebControl) {
      let heightPart = Height.get('q' + String(menuId-1))
      let cutPart = document.getElementById('q' + String(menuId-1))
      let start = cutPart?.getBoundingClientRect().left
     
      window.oWebControl.JS_CuttingPartWindow(start - 406 -10, 0, cutPart?.scrollWidth+20, heightPart-120);

    }

然后不显示菜单的时候再补回去


   if (window.oWebControl) {
      let heightPart = Height.get('q' + String(menuId-1))
      let cutPart = document.getElementById('q' + String(menuId-1))
      let start = cutPart?.getBoundingClientRect().left
      window.oWebControl.JS_RepairPartWindow(start - 406-10, 0, cutPart?.scrollWidth+20, heightPart-120);
    }

最后效果如下