jqGrid 4.4.5 Chrome中的网格列宽渲染问题

时间:2013-05-13 08:50:05

标签: javascript jquery jquery-ui jqgrid

我目前正在使用jqGrid 4.4.5 fir进行第一次开发,我遇到了一个旧版本的错误,在过去的版本中已经找到了修复程序,但我现在正在使用jQuery 1.9.1和jqueryui进行开发1.9.2也是如此。

原始问题和修正已发布here。我对这些插件的新版本遇到了同样的问题,但熟悉jQuery 1.9的人会知道$.browser已被弃用。这使得先前的解决方案无法使用。任何人都可以帮助使用类似的解决方案,或者至少在新版本的插件中使用jqGrid 4.4.5等效的代码?

注意:要添加之前未提及的内容,可能会将浏览器缩放设置为90%或更小,从而重新创建此问题。在100%缩放时它可以正确渲染,但是任何低于100%的都会出现问题。 (我需要以90%变焦渲染)。

注意:我已经切换回4.3.1测试应用了旧的修复程序,它运行得很好,所以这似乎是Chrome给我的旧问题。

提前感谢帮助和帮助我解决问题。

亲切的问候,

彼特。

1 个答案:

答案 0 :(得分:0)

您可以在jquery 1.9中使用以下代码在$ .browser中创建相同的条件,并使用link

中发布的相同解决方案

您可以使用以下代码检查浏览器条件。

jQuery.uaMatch = function( ua ) {
    ua = ua.toLowerCase();

    var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
        /(webkit)[ \/]([\w.]+)/.exec( ua ) ||
        /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
        /(msie) ([\w.]+)/.exec( ua ) ||
        ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
        [];

    return {
        browser: match[ 1 ] || "",
        version: match[ 2 ] || "0"
    };
};



matched = jQuery.uaMatch( navigator.userAgent );
     //browser = {};
     //var cursorType = evt.target.style.cursor;
       if(matched.browser.toLowerCase()=="mozilla")
        {
    }
else
{
}

另外一点如果你指的是jquery 1.9并使用1.4支持的代码意味着你可以在你的应用程序中引用jquery.migrate .js脚本文件。

http://blog.jquery.com/2013/02/16/jquery-migrate-1-1-1-released/

https://github.com/jquery/jquery-migrate/

谢谢,

希瓦