Heim > Web-Frontend > CSS-Tutorial > Warum reicht die letzte Spalte meines jqGrid in Chrome über das Raster hinaus und wie kann ich das beheben?

Warum reicht die letzte Spalte meines jqGrid in Chrome über das Raster hinaus und wie kann ich das beheben?

Patricia Arquette
Freigeben: 2024-12-25 21:55:13
Original
777 Leute haben es durchsucht

Why Does My jqGrid's Last Column Extend Beyond the Grid in Chrome, and How Can I Fix It?

jqGrid in Chrome: Problem mit der übergroßen letzten Spalte

jqGrid, eine JavaScript-Bibliothek für die Datenanzeige, weist bei Verwendung mit Chrome ein besonderes Rendering-Problem auf oder Chromrahmen. Die letzte Spalte des Rasters geht über die Grenzen hinaus und erzwingt die Anzeige horizontaler Bildlaufleisten. Diese Verzerrung tritt unabhängig von der Größe des Rasters auf.

Diagnose und Fehlerbehebung

Die Hauptursache dieses Problems liegt in einer Diskrepanz zwischen der Breitenberechnung von jqGrid und den internen Einstellungen von Chrome . Um das Problem zu beheben, ist eine Änderung am jqGrid-Code erforderlich.

Lösungsaktualisierungen

Die Fehlerbehebung umfasst die Aktualisierung der folgenden Zeile des jqGrid-Codes:

isSafari = $.browser.webkit || $.browser.safari ? true : false;
Nach dem Login kopieren

bis:

isSafari = ($.browser.webkit || $.browser.safari) &amp;&amp; parseFloat($.browser.version)<536.5 ? true : false; // Chrome < version 19
Nach dem Login kopieren

Aktualisiert Code

Hier ist der aktualisierte Code für den isSafari-Check:

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;
    }
}
Nach dem Login kopieren

Testen des Fixes

Tests in verschiedenen Browsern (IE9, IE8, Chrome 18-23, Safari, Firefox, Opera) bestätigte, dass der aktualisierte Code das Problem behebt. Das Raster wird jetzt korrekt gerendert, ohne dass die letzte Spalte übermäßig breit ist.

Gutschrift und Verbesserungen

Die ursprüngliche Korrektur wurde von trirand, dem Entwickler von jqGrid, vorgeschlagen. Anschließend wurde der Code verfeinert, um die Kompatibilität mit späteren Versionen von Chrome zu gewährleisten, die höhere WebKit-Versionen verwenden.

Mit dem aktualisierten Code können Benutzer jqGrid nahtlos in Chrome und Chrome Frame verwenden, ohne auf das problematische Problem mit der Spaltenbreite zu stoßen.

Das obige ist der detaillierte Inhalt vonWarum reicht die letzte Spalte meines jqGrid in Chrome über das Raster hinaus und wie kann ich das beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage