代码之家  ›  专栏  ›  技术社区  ›  mcv

如何使jqgrid在ie6中正确滚动?

  •  0
  • mcv  · 技术社区  · 14 年前

    我有一个需要滚动的jqgrid。它在Firefox中运行良好,但在IE6中,网格保持静止,而其他内容则在其下滚动。

    一个复杂的因素可能是网格位于选项卡内部,对话框内部。

    我到处搜索,但找不到解决这个问题的方法,所以我转向stackoverflow。这里有人知道什么会导致这种行为吗?

    如果重要的话,我正在使用jqgrid 3.5.3。

    3 回复  |  直到 14 年前
        1
  •  1
  •   EnterpriseMonkey    14 年前

    我和IE6也有同样的问题。我花了一段时间才修好,但这是我的解决办法,我希望对其他人有用。

    您需要在jqgrid的寻呼机部分添加2个条目,在这里定义add、edit、delete etc属性。

    1. scroll:1-这告诉对话框滚动
    2. aftershowform:function(form){form.css(“height”,“300px”);}-这解决了ie6的一些绘图问题,它再次迫使对话框滚动。

    如果希望对话框滚动并同时从节中移除任何现有高度属性,则需要同时使用这两个属性。你不必创建form.css文件,至少我没有,它只是正常工作。

            { add: false, edit: true, del: false, refresh: true, search: true }, //general options
            {
            //Options for the Edit Dialog
                editCaption: 'Edit Data',
            width: 500,
            modal: true,
            scroll: 1,
            closeAfterEdit: true,
            onclickSubmit: function(eparams) {
                var sr = jQuery("#MyGridTbl").getGridParam('selrow');
                var currentRow = jQuery("#MyGridTbl").getRowData(sr);
                return { Id: currentRow.Id };
            },
            afterShowForm: function(form) { form.css("height", "300px"); } 
        },
            {
            },
            {
            },
            {} //Search options
        );
    
        2
  •  1
  •   Tomekka    14 年前

    我也遇到过类似的问题。我的网格在一个div中,这个div有垂直的滚动条。我的问题是当我滚动div时,网格仍然是静态的。我花了一些时间才发现是div的位置破坏了网格的位置。将div的位置更改为relative,并按原样滚动。 不管怎样,我只是想分享一下,因为我觉得这个论坛很(!)有用的。

    谢谢, 托马什

        3
  •  0
  •   Tom    14 年前

    为什么要为2001年发布的浏览器内置功能(9年前!)他们的创造者不再支持他们了?我知道他们正式“支持”ie 6到2014年,但由于缺乏对webstandard和更新技术的支持,我建议您的项目访问者升级他们的系统。(因为除了缺乏对现代网络糖果的支持外,它只是一个有缺陷且不安全的浏览器)