【问题标题】:How to call onclick event, reenable function | PURE JS only如何调用onclick事件,重新启用函数|仅限纯 JS
【发布时间】:2016-09-27 10:53:49
【问题描述】:

我对包装器内的项目有以下功能。

    //vars

    for (var i=0; i<divs.length; i++) (function(i) {
    divs[i].onclick = function showTheA() {
      if (divs[i].offsetHeight == 130) {
        divs[i].style.height = '250px';
        element1[i].style.display = "flex"; // example
        element2[i].style.width = "80%"; //example

      }
      else { 
        divs[i].style.height = "";
        element1[i].style.display = ""; // example
        element2[i].style.width = ""; //example
      }
    };
})(i); 

然后我用另一个元素(例如 abcd)覆盖整个项目,因此它覆盖项目的整个内容,但我想禁用此覆盖下方元素的 onclick 事件。 元素 abcd(覆盖)具有绝对位置和更高的 z-index,但它仍然可以为下面的divs 执行 onclick 事件(更改高度);

divs[i].onclick=null;

如何调用上述函数进行循环?

【问题讨论】:

    标签: javascript html z-index absolute


    【解决方案1】:

    您可以改用指针事件。

    禁用尝试:

    divs[i].style.pointerEvents = "none";
    

    重新启用:

    divs[i].style.pointerEvents = "";
    

    【讨论】:

    • 谢谢,但我也无法点击覆盖层内的链接。
    猜你喜欢
    • 2014-02-24
    • 2021-12-29
    • 2023-01-29
    • 2014-10-15
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-13
    相关资源
    最近更新 更多