jqGrid dans Chrome : problème de dernière colonne surdimensionnée
jqGrid, une bibliothèque JavaScript pour l'affichage des données, présente un problème de rendu particulier lorsqu'elle est utilisée avec Chrome ou Cadre Chrome. La dernière colonne de la grille s'étend au-delà des limites, forçant l'apparition de barres de défilement horizontales. Cette distorsion se produit quelle que soit la taille de la grille.
Diagnostic et dépannage
La cause première de ce problème réside dans une inadéquation entre le calcul de la largeur de jqGrid et les paramètres internes de Chrome. . Pour le résoudre, une modification du code de jqGrid est nécessaire.
Mises à jour de la solution
Le correctif implique la mise à jour de la ligne suivante du code de jqGrid :
isSafari = $.browser.webkit || $.browser.safari ? true : false;
à :
isSafari = ($.browser.webkit || $.browser.safari) && parseFloat($.browser.version)<536.5 ? true : false; // Chrome < version 19
Mise à jour Code
Voici le code mis à jour pour la vérification isSafari :
if (isSafari) { chromeVersion = parseFloat($.browser.version); // Later Chrome versions using WebKit will fall below the threshold if (chromeVersion<536.11) { // Chrome 20 uses 536.11 (Change as browsers change) isSafari = true; // Only early Chrome requires the correction } else { isSafari = false; } }
Test du correctif
Tests sur différents navigateurs (IE9, IE8, Chrome 18-23, Safari, Firefox, Opera) a confirmé que le code mis à jour résout le problème. La grille s'affiche désormais correctement, sans largeur excessive sur la dernière colonne.
Crédits et améliorations
Le correctif original a été suggéré par trirand, le développeur de jqGrid. Par la suite, le code a été affiné pour inclure la compatibilité avec les versions ultérieures de Chrome qui utilisent des versions WebKit supérieures.
Avec le code mis à jour, les utilisateurs peuvent utiliser jqGrid de manière transparente dans Chrome et Chrome Frame sans rencontrer le problème problématique de largeur de colonne.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!