jQuery Version Kompatibilität Erkennung

7

Gibt es irgendwelche Ressourcen, die ein jQuery-Skript / eine Erweiterung / ein Plugin / was auch immer für Probleme mit der Versionskompatibilität testen können?

    
Derek Adair 16.04.2010, 18:28
quelle

7 Antworten

13

Ich habe gerade ein kleines jQuery-Plugin geschrieben, um Probleme mit der Versionskompatibilität zu lösen ... könntest es verbessern.

%Vor%

Kann wie folgt verwendet werden:

%Vor%

Unterstützt auch Pre-Releases (Releases werden schwerer gewogen als Pre-Releases, so dass 1.4.0pre & lt; 1.4.0):

%Vor%     
kflorence 24.06.2010 20:41
quelle
5

Der Code hat einige Fehler, insbesondere

  1. $. isVersion ('1.9.2.17', '& lt;', '2.0') gibt false zurück
  2. $. isVersion ('1.17.2.1', '& gt;', '1.8') gibt false zurück

Lösung
1. wird durch den beigefügten Code behoben.
2. ist nicht so, wie es ohne eine vollständige Umschreibung schwieriger ist, und ist sowieso ein seltener Fall.

%Vor%     
scentos 22.06.2011 14:49
quelle
3

Dafür gibt es keine automatisierten Werkzeuge, zumindest habe ich das nie gesehen. Der Grund dafür ist, dass das Core-Team von jQuery versucht, nicht Breaking-Änderungen einzuführen, es sei denn, es besteht ein echter langfristiger Nutzen. Dies bedeutet, dass, was Sie wollten ist, wenn es sich um brechende Änderungen handelt, was ein automatisiertes System Ihnen nicht immer sagen kann.

Lassen Sie uns jQuery 1.4 als Beispiel verwenden, hier ist eine Liste der Änderungen: Ссылка

  • jQuery() ist jetzt eine leere Menge, gut oder schlecht?
  • jQuery.browser.version ist jetzt Browserversion, gut oder schlecht?
  • JSON unterliegt nun viel strengerem Parsen, gut oder schlecht?

Das sind nur eine Handvoll, aber ob sie brechen oder helfen, hängt oft von Ihrem Code ab. Nun, wenn du .attr(val, func()) hättest, dann wäre das natürlich nur 1.4+, das du erkennen könntest ... also könnte eine Engine, die die Mindestversion von jQuery bestimmen könnte, die dein Code verwenden könnte, möglich sein.

Das Überprüfen von Kompatibilitätsproblemen, die ich in den meisten Fällen für den Bruch von Änderungen halte, wäre sehr viel schwieriger, weil sie (meistens) von Natur aus sehr merkwürdig sind oder Eckpunkte, die kaputt sind ... sonst hätte das Team nicht gebrochen sie:)

    
Nick Craver 17.04.2010 00:34
quelle
1

Möchten Sie die aktuelle Version von jQuery abrufen und testen, ob es eine bestimmte Version ist?

%Vor%

Das wird die Version bekommen.

Metropole

    
Metropolis 16.04.2010 21:22
quelle
0

Hier ist meine schnelle und schmutzige Lösung:

%Vor%

Beispielverwendung:

%Vor%

Es führt eine alphabetische Sortierung für das Array durch. Das einzige Mal, wenn es fehlschlägt, ist, wenn aus irgendeinem Grund die Version "x.y" vs "x.y.0" . In diesem Fall wird die .0 Version als größer wahrgenommen. Es unterstützt auch keine "pre" Versionen.

Hier ist eine kleinere Version:

%Vor%

Hier ist eine zuverlässigere Funktion, wenn Sie sich Sorgen machen über "rc1", "pre" oder x.0 versions:

%Vor%

Dies ist wie eine Sortier- oder .compare-Funktion, da es 0 zurückgibt, wenn es gleich ist, 1 , wenn ein & gt; b und -1 , wenn ein & lt; b. Beispiel:

%Vor%     
travis 11.05.2012 20:51
quelle
0

Ich schrieb die Lösung auf meinen gespaltenen Kern: Ссылка . Was denkst du?

    
Adiono 14.12.2013 02:12
quelle
-3

Heilige raucht Leute, das sind die ausführlichsten Lösungen aller Zeiten! Fehle ich etwas? Ich muss sein. Unten ist meine Lösung, was fehlt mir?

Komprimierte Version:

%Vor%

Lange Version für Klarheit:

%Vor%     
David Hobs 26.04.2012 23:02
quelle