2016-04-28 3 views
0

Ich habe meine Test Server Umgebung von PHP 5.x auf 7.0 aktualisiert. Dies hat zu einigen Änderungen am Basiscode geführt (mysql -> mysqli, etc), aber dieser Fehler führt dazu, dass ich in Kreisen laufe. Ich benutze die Aktie Slimbox2 Lightbox jQuery Alternative. Nach dem Upgrade der PHP-Module, und dsorted die meisten Probleme, die Slimbox funktionierte nicht mehr, und mit diesem Fehler gekennzeichnet:

Uncaught TypeError: $ (...) .Slimbox ist keine Funktion Wenn ich Drilldown ein bisschen, ist der Anschluss an die Stelle der Fehler aus (gerade aus slimbox2.js .. v2.05) kommt:

if (!/android|iphone|ipod|series60|symbian|windows ce|blackberry/i.test(navigator.userAgent)) { 
jQuery(function($) { 
    $("a[rel^='lightbox']").slimbox({/* Put custom options here */}, null, function(el) { 
     return (this == el) || ((this.rel.length > 8) && (this.rel == el.rel)); 
    }); 
}); 

Weitere Beiträge zu diesem Fehler umkreisen in scheint ein Konflikt zwischen JQuery/Prototype sein/usw.

Die Funktion ist in slimbox2.js definiert und alle scheinen in JQuery eingebettet zu sein, um sicherzustellen, dass die richtigen Bits vorhanden sind gezogen.

Vielen Dank für Ihre Hilfe!

+2

PHP hat nichts mit Slimbox/JS zu tun, außer was das JavaScript-Programm, das das PHP-Programm erzeugt, verursacht. Eine der clientseitigen Abhängigkeiten (oder URLs von solchen, usw.) wurde geändert - vielleicht wurde eine der Dateien nicht heruntergeladen? – user2864740

+0

Haben Sie jQuery importiert? Vielleicht werden die Bibliotheken in der falschen Reihenfolge importiert? – 4castle

+0

Sie könnten versuchen, F12 im Browser drücken und überprüfen Sie die Registerkarte Netzwerk für alle Dateien, die nicht geladen werden können. Nach js-Dateien filtern und sehen, was geladen ist. jQuery sollte irgendwo geladen werden, aber vielleicht wird es geladen, nachdem Sie versucht haben, es statt vorher zu verwenden. – HMR

Antwort

0

Das Problem wurde irgendwo in einem Paket, das nicht ordnungsgemäß installiert wurde, begraben. Ich löste den Webserver und die PHP-Pakete und legte sie wieder zurück, um das Problem zu beheben.