Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在客户端脚本执行时显示加载GIF图像_Jquery - Fatal编程技术网

Jquery 在客户端脚本执行时显示加载GIF图像

Jquery 在客户端脚本执行时显示加载GIF图像,jquery,Jquery,我得到了非常重的jQuery代码。所有内容都预加载到客户端,然后使用jQuery进行排序: $('.acc_trigger').hide(); $('#taxonomylist ul li').each(function() { $href = $("a", this).attr("href"); if (!$href.match(/^.*\/activity\/.*[a-z,A-Z]$/i)) { $(this).hide(); } }); $('#ta

我得到了非常重的jQuery代码。所有内容都预加载到客户端,然后使用jQuery进行排序:

$('.acc_trigger').hide();
$('#taxonomylist ul li').each(function() {
    $href = $("a", this).attr("href");
    if (!$href.match(/^.*\/activity\/.*[a-z,A-Z]$/i)) {
        $(this).hide();
    }
});
$('#taxonomylist ul li a').click(function() {
    $href = $(this).attr("href");
    $('.acc_trigger').hide();
    $regex = new RegExp("^" + $href + "+$");

    $('div.taxonomy ul li').each(function() {
        $href_taxonomy = $("a", this).attr("href");
        if ($href_taxonomy == $href) {
            $(this).parents().filter('.views-field-webform-form-body').prev().show();
        }
    });

    $('#taxonomylist ul li').each(function() {
        $href_sub = $("a", this).attr("href");
        if (!$href_sub.match($regex)) {
            $(this).show();
        }
    });

    return false;
});

当JavaScript代码运行时,如何显示加载图像?或者您可能在我的代码中看到了一些可以改进的地方?

如果不知道这个jQuery在操作什么,就很难提出任何改进建议


然而,我过去使用过加载图标,将它们作为背景图像放在所有数据加载到的任何对象上,这样当数据加载时,它就会覆盖它们。

只需在开始jQuery工作之前显示加载图像,并在完成后将其隐藏即可


我不认为在使用Ajax时会发生类似的事件。

浏览器中的JavaScript执行、页面呈现和绘制管道是单线程的(除非将HTML5 webworkers计算在内)。这意味着,如果您运行的JavaScript占用了足够多的CPU,动画GIF图像将停止动画。唯一的解决方法是优化代码,在某些情况下,使用
settimeout

打破执行调用堆栈。您还可以查看jquery插件blockUI,它可以阻止整个或部分ui并显示加载图像