0

我正在使用以下函数来显示和隐藏在浏览器工作时包含加载图像的 div。它在 Firefox 中运行良好。在 Chrome 中虽然它不这样做。屏幕保持静止,开始函数调用的按钮处于“单击”状态,即使鼠标不在它上面。如果我使用开发人员工具设置断点,那么我会看到 setVisibility() 函数被调用并且加载器 div 被正确显示和隐藏。

该函数如下所示:

    function setVisibility(id, visibility) {
        if(document.getElementById(id)){
            document.getElementById(id).style.display = visibility;
        }
    }

这是一个显示/隐藏调用的示例:

    setVisibility("loader", "inline");
    setVisibility("loader", 'none');

有任何想法吗?

4

2 回答 2

0

我不确定您是否对 jquery 了解很多,但我会包含最新的 jquery 并使用 .show() 和 .hide() 方法...

http://docs.jquery.com/Show

n/m 这个花絮,你正在使用显示,通过我关闭可见性函数名称。

于 2011-09-06T20:59:52.677 回答
0

我希望这有帮助

我遇到了同样的问题,我真的不知道它是怎么发生的,但是可以使用如下代码中的一小段延迟来修复它。

使用此代码替换您的功能

function setVisibility(id, visibility) {
        if(document.getElementById(id)){
            setTimeout(function(){
               document.getElementById(id).style.display = visibility;
            }, 1);
             // please note i have added a delay of 1 millisecond with js timeout function which runs almost same as code with no delay.

        }
    }
于 2015-11-15T09:24:51.303 回答