Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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
Javascript 页面上的单个图像会显著降低所有jquery事件的速度_Javascript_Jquery - Fatal编程技术网

Javascript 页面上的单个图像会显著降低所有jquery事件的速度

Javascript 页面上的单个图像会显著降低所有jquery事件的速度,javascript,jquery,Javascript,Jquery,我有一个文件上传表,旁边有一个数据表。在常规数据表单中,如果在select中进行了某些选择,那么jquery将加载其他输入字段。但如果用户上传文件,则会显著降低数据表单的速度。大约200KB的图像使所有jquery都变慢了。为什么图像会影响我的jquery 我在所有操作之前使用$(文档),例如 $(document).on('mouseover','input[type=button], input[type=submit], a, option',function() { $(this

我有一个文件上传表,旁边有一个数据表。在常规数据表单中,如果在select中进行了某些选择,那么jquery将加载其他输入字段。但如果用户上传文件,则会显著降低数据表单的速度。大约200KB的图像使所有jquery都变慢了。为什么图像会影响我的jquery

我在所有操作之前使用$(文档),例如

$(document).on('mouseover','input[type=button], input[type=submit], a, option',function() {
    $(this).css({'background-position':'100%'});
});
这就是问题所在吗?如果没有,我可以做些什么来解决这个问题。谢谢

缓慢的代码

function DATA_LOAD(TYPE, VALUE) {

TYPE_WIDTH  = $('#'+TYPE).width();
TYPE_HEIGHT = $('#'+TYPE).height();

$('#'+TYPE+'_PROGRESS_END').fadeOut(250);
$('#'+TYPE+'_PROGRESS').css({'background-image':'url(/DISPLAY/load2-2.gif)'}).fadeIn(250);
$('#'+TYPE).css({'min-height': TYPE_HEIGHT,'background':'#000 url(/DISPLAY/load1-1.gif) repeat'});
$('#'+TYPE+'_LOAD').animate({'opacity':'0'}, 250, function() {
    $('#'+TYPE+'_LOAD').load('/LOAD/data.php',{TYPE: TYPE, TYPE_WIDTH: TYPE_WIDTH, VALUE: VALUE}, function() {                                      

        TYPE_HEIGHT = $('#'+TYPE+'_LOAD').show().height();

        $('#'+TYPE+'_LOAD').hide();
        $('#'+TYPE).animate({'min-height': TYPE_HEIGHT}, 250,function() {
            $('#'+TYPE+'_LOAD').css({'display':'block'}); 
            $('#'+TYPE+'_PROGRESS').fadeOut(250);
            $('#'+TYPE+'_LOAD').animate({'opacity':'1'}, 250, function() {
                $('#'+TYPE).css({'background':''}); 
}); }); }); }); }
我测试的内容

  • 我在浏览器中检查了我的代码,并取消选中了正在显示的所有背景图像,代码运行得非常完美!但是对于图像,jquery的速度非常慢。它超级迟钝和紧张。显示的图像大小直接影响jquery的平滑度。为什么?

  • 除了上面的代码,我还删除了所有jquery,它没有任何影响。还是很慢


  • 我发现了问题。这就是我的布局格式

    <table>
    <tr>
    <td>IMAGES</td>
    <td>FORM WITH JQUERY ACTIONS</td>
    </tr>
    </table>
    
    
    图像
    带有JQUERY操作的表单
    
    为什么一个带有表的布局会把我的jquery动作搞砸

    解决方案


    删除表格和使用的浮动元素

    显示所有代码。我们无法知道这是否会导致它变慢。。。它可能是,但也可能是代码的任何其他部分。