Java Konflikte beim Slider

MarcoCH

Angesehenes Mitglied
Hallo Zusammen

Mein Programmierwissen ist nicht so ausgereift, daher brauche ich Euren Rat ... hoffe Ihr könnt mir helfen.

Ich hab eine Seite mit Wordpress erstellt, auf der Startseite hat es ein Slider drin: www.neolith-finehard.ch, gestern habe ich ein Kontaktformular Plugin installiert (Contact Form 7), sobald ich das Plugin aktiviere streikt mir der Slider auf der Startseite. was ich rausgefunden habe ist, dass beim aktivieren folgende Codes eingebunden werden:

CODE <link rel='stylesheet' id='contact-form-7-css' href='http://www.neolith-finehard.ch/wp-content/plugins/contact-form-7/includes/css/styles.css?ver=4.0.3' type='text/css' media='all' />
<script type='text/javascript' src='http://www.neolith-finehard.ch/wp-includes/js/jquery/jquery.js?ver=1.11.1'></script>
<script type='text/javascript' src='http://www.neolith-finehard.ch/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.2.1'></script>


Ich vermute mal, dass das "jquery" von "wp-includes" ein Konflikt auslöst mit dem "jquery" vom Themen Slider. Ich hab nun das "jquery.js" umbennent, dann geht zumindest der Slider wieder, doch gewisse Funktionen in WP Admin gehen dann nicht mehr. (z.B. Optionen und Hilfe Einblendung, Text und Visuel Ansichten)

Wie kann ich die "jquery.js" so steuern, dass jedes sein Ding macht, ohne Konflikte?
Versteht Ihr auch alles
wink.gif


Bin gespannt auf Eure Antworten.

Grüsse
Marco
 
Manchmal hilft es, eine andere Version der jquery Scripte zu benutzen.

Oder Objekte umbenennen und auch im Script umbenennen
 
Danke für Deine Antwort PH ...

Irgendwie habe ich bemerkt, dass gewisse Funktionen nur an einem PC (IE 10) nicht funktionieren, aber auch auf anderen Browsern, nehme ich mein Laptop, ebenfalls mit IE 10 bestückt und weiteren Browsern dann klappt es. Gibt es eine "Internet" Einstellung die mir gewisse jquery Einstellungen blockieren? Wie finde ich dies nun wieder raus?

Danke und Gruss
Marco
 
QUOTE (MarcoCH @ Do 29.01.2015, 10:33) Danke für Deine Antwort PH ...

Irgendwie habe ich bemerkt, dass gewisse Funktionen nur an einem PC (IE 10) nicht funktionieren, aber auch auf anderen Browsern, nehme ich mein Laptop, ebenfalls mit IE 10 bestückt und weiteren Browsern dann klappt es. Gibt es eine "Internet" Einstellung die mir gewisse jquery Einstellungen blockieren? Wie finde ich dies nun wieder raus?

Danke und Gruss
Marco

Ich bin da etwas überfragt.

Ich hatte bereits etliche Probleme mit Javascript Kompatibilität - genau dieselben Probleme wie Du, d.h. Konflikte zwischen Skripten und dann auch Cross-Browser Kompatibilität. Ein echter Albtraum.

Wir schreiben 2015 und noch immer behandeln aktuelle Browser den Code anders.

Die Cross-Browser Kompatibilität liess sich bei mir am besten damit lösen, neuere Skript Versionen zu benutzen.
Konflikte zwischen Skripten habe ich mit umbennen und teils mit Verwendung von anderen Libraries gelöst.

Leider kam es häufig vor, dass ich die Konflite dadurch gelöst habe, dass ich einfach andere Skripte verwendet habe.

Es gibt verschiedene Tools zum debuggen, angefangen bei den Klassikern wie Firebug, hier ist noch eine Liste:
http://codegeekz.com/best-javascript-debug...for-developers/
Wenn ein einfaches umbenennen der Objekte oder Variablen nicht genügt, kann sich das debuggen in die Länge ziehen - dann kommen noch die anderen Probleme z.B. wenn die Libraries geupdatet werden, das zwingt dazu eine lokale Kopie zu haben. Letzteres ist aber nur dann vertretbar, wenn es sich um ein in sich geschlossenes Skript handelt, z.B. einen Slider, den man in 3 Jahren noch getrost mit einer älteren lokalen Library laufen lassen kann.
Bei AJAX-Libraries sollte man sich jedoch das mit der Security sehr gut überlegen.

Ich sehe den Lösungsprozess als reine Glückssache an.
Im Grossen und Ganzen ist es die Sache nicht Wert, viel Zeit darauf zu verwenden die Dinger kompatibel zu machen.
Ein Skriptwechsel ist da besser und bietet bessere Chancen auf rasche Lösung.

Ich kann einfach nicht verstehen warum in jeder JS Library alle Variablen, Funtionen, usw. also alles was benannt werden kann, nicht mit einem Präfix mit dem Namen der Library und ihrer Version versehen werden, wie z.B. "mootools151" oder "jquery19"...
Ist doch total bekloppt.
 
Zurück
Oben