Ankündigung

Einklappen
Keine Ankündigung bisher.

Javascript wird nicht geladen oder so

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Javascript wird nicht geladen oder so

    Ich versuche gerade in meinen Chat was einzubauen.
    Das lief auch erstmal ganz gut an. Jetzt habe ich irgendwo ein Fehler und versuche den zufinden.
    Fehler werden von Php und Js nicht angezeigt.
    Mein debugging hat mich bis hier hin gebracht
    PHP-Code:
        if($user['user_rank'] > 2){
            echo  
    '<script>alert("MIST"); </script>';
            echo  
    '<script src="js/admin.js"></script>';
            echo  
    '<script>alert("MIST"); </script>';
        } 
    Beide Alerts "MIST" werden angezeigt . Das Script admin.js hat mitlerweile nur noch einen Alert drinne ( Habe schon alles raus debuggt ).

    Trotzdem wird der Alert aus den Script nicht angezeigt.
    Was kann das sein ?

    Link passt
    error report keine
    fehlerkonsole keine
    Cache gelöscht

    Jetzt stehe vorm "Ich weiß nicht mehr weiter"
    Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
    Erreichbar in mein Javascript-Forum und in Facebook-Chat

  • #2
    Wird denn admin.js geladen? Zu sehen in den DevTools unter Network (im Chrome).

    Kommentar


    • #3
      mhh. Das bringt das problem schon mal etwas näher.
      Also geladen wird es. klicke ich dann das Link in den dev Tools an steht da aber noch der alte Code drinne , also nicht der eine alert. Habe cache alles gelöscht. Warum ist da den der falsche Code noch drinne ?
      Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
      Erreichbar in mein Javascript-Forum und in Facebook-Chat

      Kommentar


      • #4
        Dort Rechtsklick und "Clear Browser cache".

        Oder: Arbeitest du auf einem Server und hast die Datei vielleicht nicht aktualisiert?

        Kommentar


        • #5
          Ah da wahr das. Ich habe die letzten Tage schon mal nach sowas gesucht in der Console. Habe aber nie was wie aktualisieren oder Cache löschen gefunden , oder übersehen.
          Jetzt habe ich sie gelöscht und bekomme wieder reichlich Alerts um die Ohren geworfen.
          Ich hoffe ich finde die ganzen Alerts wieder im Code. Hatte da einige reingebaut um die Fehler zu debbugen.

          Ich weiß ich bin selber schuld , weil man solte console.log() nutzen und keine Alerts.

          Ok Danke jonas3344 hast mir geholfen. Problem ist jetzt erstmal beseitigt.
          Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
          Erreichbar in mein Javascript-Forum und in Facebook-Chat

          Kommentar


          • #6
            Javascript sollte auch nicht von PHP erzeugt werden, jetzt weisst du auch warum.
            Wie Bilder werden Sripte im Browser zwischengespeichert, daher sollte Javascript unabhängig vom Server im Client funktionieren.
            Du lieferst also nur HTML aus und das Script entscheidet dann abhängig vom Code ob was passiert.


            Kommentar


            • #7
              Zitat von protestix Beitrag anzeigen
              Javascript sollte auch nicht von PHP erzeugt werden, jetzt weisst du auch warum.
              Ok das ergbt ein sinn. Werde mich dran errinern wenn ich mal sowas in der art selber schreibe.
              In diesen Fall ist das ein fertiger Chat (Boomchat) der das alles schon so drinne hat. Verstehe zwar nicht warum ein so großer Chat den Code so schreibt,aber irgendwas muß er sich ja dabei gedacht haben. Wahrscheinlich rechnet er auch nicht damit das irgendwelche Leute da noch was mit rein bauen oder so . Normalerweise ändert ja keiner die admin.js und sollte dann wohl egal sein wenn der Browser das aus der Cache holt.

              Konnte man im header nicht irgendein Code mit senden damit der Browser das nicht cachen tut ?
              Wäre in der Zeit solange ich da noch rumbastel vieleicht nicht verkehrt. Wenn ich fertig bin kann es ja wieder gecacht werden.
              Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
              Erreichbar in mein Javascript-Forum und in Facebook-Chat

              Kommentar


              • #8
                Die Dateien werden immer im Cache gespeichert und von dort geladen. Was meist du wohl warum?
                Du kannst ein Timestamp als Fragment hinten dran hängen, so lange du entwickelst.

                EDIT:
                Noch ein Nachtrag. Diese Seite erklärt das Caching mit all seinen Facetten.

                Kommentar


                • #9
                  Ich habe noch ein neues problem,nur weiß ich nicht ob ich dafür extra ein Thema aufmachen soll.
                  Ich erkläre mal schnell.
                  Bei den Chat hole ich style angaben die aus der Db kommen.
                  Code:
                    function  start(){
                  
                          $.ajax({
                              url: "system/hintergrund-laden.php",
                              cache: false,
                              success: function(html){
                   alert(html)
                                 $('#show_chat').css(html);
                             $('.ch_logs').css('background','none');
                              },
                          });
                  
                    }
                  Das Php
                  Code:
                           if ($find_room->num_rows > 0){
                                  $room = $find_room->fetch_array(MYSQLI_BOTH);
                                  $leng=strlen($room['picture']);
                                  if($leng>7){
                                      echo "'background-image','url({$room['picture']}')";  
                                  }else{
                                      echo "'background','{$room['picture']}'";
                                  }
                           }
                  Das Endergebniss stimmt , doch es wird die Farbe nicht geändert. Kopiere ichden Text aus den alert direktda hin wo das css(html) steht funktioniert e ja ..
                  Muß man da noch irgendwas umwandeln ,weil es es aus den Php kommt oder so was .

                  Ich habe auch schon andere komma varianten probiert auch jquery ,aber der style ändert sich nicht .

                  Fehler habe ich auch keine, keine von Php und keine von JS
                  Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
                  Erreichbar in mein Javascript-Forum und in Facebook-Chat

                  Kommentar


                  • #10
                    Ich erkläre mal schnell.
                    Ich antworte mal schnell:

                    Du gibst nicht mal Feedback ob dir die Hinweise was gebracht haben oder ob dein Problem noch existiert und hängst egoistischerweise gleich die nächste Frage dran.

                    CSS solle zudem in CSS Dateien abgelegt werden wegen des Caching.
                    Den unterschiedlichen Zugriff regelst du dann über Klassen, oder ids.

                    Kommentar


                    • #11
                      Was steht den da
                      Zitat von basti1012 Beitrag anzeigen
                      Ok Danke jonas3344 hast mir geholfen. Problem ist jetzt erstmal beseitigt.
                      Die Css soll in diesen Fall nicht gecacht werden weil ständig anderer Hintergrund da sein Kann.
                      Außerdem weiß ich sonst kein weg wie ich die unterschiedlichen Css Daten da rein bekommen soll auser mit echo und <style> bla</style> , aber das ist wohl der falsche weg
                      Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
                      Erreichbar in mein Javascript-Forum und in Facebook-Chat

                      Kommentar


                      • #12
                        Du schreibst im CSS verschiedene Klassen. Und im js nutzt du dann .addClass() und .removeClass() um je nach Ausganglage dem Element die jeweilige Klasse hinzuzuweisen oder wieder zu entfernen.

                        Kommentar


                        • #13
                          Zitat von jonas3344 Beitrag anzeigen
                          Du schreibst im CSS verschiedene Klassen. Und im js nutzt du dann .addClass() und .removeClass() um je nach Ausganglage dem Element die jeweilige Klasse hinzuzuweisen oder wieder zu entfernen.
                          Das würde ich hinbekommen. Nur wie bekomme ich die verschiedene Angaben in der css rein? Das Bild und Farbe ist Variable und kann alles sein .Ich sagte ja eben schon das ich mit
                          echo "<style>Css</style>";
                          das hinkriegen würde,doch das ist bestimmt der falsche weg mitten in Code irgendwelche <style> Tags zu haben,obwohl es ja erlaubt ist. Aber finde ich trotzdem nicht schön.
                          Wie kann ich den noch die Style angaben aus der DB in der style.css bekommen?
                          Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
                          Erreichbar in mein Javascript-Forum und in Facebook-Chat

                          Kommentar


                          • #14
                            Das was jonas3344 beschreibt ist der optimal Weg.
                            Natürlich kannst und darfst du auch inline CSS verwenden, oder CSS Style-Angaben im header einfügen. Ist halt nicht so gern gesehen, weil schwerer zu debuggen und es der Trennung von Inhalt und Darstellung widerspricht, aber was valide ist, ist erlaubt.

                            Kommentar


                            • #15
                              Ok. Bevor ihr geantwortet habt hatte ich noch diese möglichkeit entdeckt
                              Code:
                                     $('#show_chat').attr('style',''+html+'');
                              Klappt auch ,aber auch nicht schön.
                              Werde das mal mit addClass und removeClass() versuchen.
                              Wie es jetzt ist ist es noch nicht optimal. Wenn man jetzt auf einen Raumnamen klickt ,wechselt er den Raum.OK.
                              Nur muß ich den Raumnamen nochmal anklicken damit der andere Hintergrund geladen wird.Ist ja irgendwie logisch weil der Raum ja in Php geändert wird und nicht mit Javascript.
                              Denke mal das ich das richtig gedacht habe. Ohne den Code zu kennen könnt ihr das bestimmt auch nur raten.
                              Muß dann nur noch ein weg finden das er beim Raum wechseln sofort den Hintergrund wechselt und nicht beim 2ten klick.
                              Ich mach keine Rechtschreibfehler - ich schreib Freestyle!
                              Erreichbar in mein Javascript-Forum und in Facebook-Chat

                              Kommentar

                              Lädt...
                              X