Frage von Nindane, 64

PHP überschreibt JS functions?

Ich habe eine Musikwunschliste gemacht und die Datenbankausgabe unter das Formular geschrieben, jetzt habe ich das Problem das meine mobile Navigation ihre funktions nicht mehr funktionieren, die click, das mouseout und das mouseover sind einfach nicht mehr zur verfügung.

Was ist das passiert?

Antwort
von Minilexikon, 7

Kleiner Tipp noch: Achte auf die Einrückungen deiner Schleife und die Anführungszeichen bei den tr-Tags ;)

Antwort
von Kiboman, 35

1. Meinen vorredner beachten

2. Warum sind die script taga nicht im header

3. Layout mit tabellen ist noch älter als mysql... ()

4. Wenn du wüsstest was du tust dann würdest du debuggen und einen haufen Warnungen bekommen

Kommentar von Nindane ,

1. danke
2. es ist nicht im header weil es so am schluss laden kann sprich es spart unnötige ladezeiten am anfang.
3. sind es daten die auch heute noch in einer tabelle ausgegeben werden ich mach ja nicht das layout damit oder so
4. habe ich mir jedes tutorial dazu angeschaut und die haben es alle so gemacht

mysqli hat meine backend nicht erwähnt und die navigation ist über in include drinnen und nicht spannender als eine normale navigation.

es hat irgendwas mit dem .navi zu tun aber ich weiß nicht warum mir das php da so zicken reinmacht das ist mein wesentliches problem, warum mein php die js functions beinträchtigt, wenn es dafür einen logischen grund gibt ist mir schon geholfen.

Kommentar von Kiboman ,

ok wenn die tabelle eine tabelle ist, sry.

die ladezeiten bleiben gleich wenn du die sachen in den header schiebst da wo sie hingehören.

debuggen ist das a und o

error_reporting (E_ALL);

ini_set ("display_errors", TRUE);

mit dem kleinen auschnitt kann man nichts sagen, was da falsch läuft.

Kommentar von EightSix ,

Scripts kommen, bis auf Ausnahmen, immer in den Footer

Antwort
von webflexer, 39

Ich sehe hier keine Navigation , nur einen Code-Ausschnitt. Schau dir doch mal in den Entwickler-Tools vom Browser an ob es einen JavaScript Error gibt.

Noch ein kleiner Hinweis. mysql ist deprecated, verwende lieber mysqli oder PDO.

Antwort
von EyeBook888, 31

Wenn ich dich richtig verstanden habe, ist dein Problem das mouseout und das mouseover Event in der Mobileversion. Auf Touchierten gibt es diese Events nicht, da sie die Bewegung der Maus auf der Bildfläche abfangen, die bei einem Finder nicht zustande kommt.

Du solltest stattdessen auf onClick und onMouseUp ausweichen.

Kommentar von Nindane ,

es hatte schon funktioniert bis ich das php reingeschoben hab ... 

Antwort
von RedKungFuMastr, 18

Ist das dein Ernst?? PHP Skripts immer zuerst, dann das Layout!!! Ansonsten funktionieren Methoden wie "header()" in PHP nicht, die man oft für einen Redirect braucht!!!

Antwort
von maximilianus7, 21

nein, php überschreibt keine js functions.

du solltest...

1. keine fragen mehrmals stellen, sondern die diskussionen, nachfragen, ergänzungen durch kommentare in der einen ersten frage fortführen.

2. keine codes durch bilder darstellen, sondern - wie gesagt - extern, z.b. auf paste2.org

3. wo hast du das nav.jquery.min.js (musste ich jetzt vom bild ablesen und eintippen!) her? im web hab ich nur jquery.nav.min.js gefunden: http://www.jqueryscript.net/menu/Smooth-Smart-One-Page-Navigation-Plugin.html

4. was das php dir letztendlich ausliefert, kannst du dir im browser mit ctrl-u anschauen. 

Antwort
von webflexer, 29

Noch ein kleiner Hinweis, auch wenn Du das JavaScript an das Ende des Dokumentes gesetzt hast, schreibe es lieber so:

$(function(){
$('.nav').nav();
});
Kommentar von RedKungFuMastr ,

Völlig sinnlos. Das Skript ist am Ende des Dokuments, ergo wird das Skript auch erst zum Ende ausgeführt!!

$(function(){}) ist dasselbe wie $(document).ready(function(){}) und begünstigt, dass das Skript erst ausführt, nachdem das Dokument fertiggeladen ist.

Kommentar von webflexer ,

Sinnlos ist es nicht, da aus seinem Code-Schnipsel nicht 100% ersichtlich ist ob dies auch wirklich das Dateiende ist :)

Ich sehe zumindest keinen abschließenden </body> Tag.

Kommentar von mrhashpipeotto ,

@redkungfumeise: so etwas banales wie das Dokument von oben nach unten abarbeiten machen die browser seit jahren nicht mehr, der parsing prozess ist etwas komplizierter

Keine passende Antwort gefunden?

Fragen Sie die Community