Ankündigung

Einklappen
Keine Ankündigung bisher.

Durch AJAX die seite gar nicht mehr neu laden???

Einklappen

Neue Werbung 2019

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

  • Durch AJAX die seite gar nicht mehr neu laden???

    Hallo,

    ich bin gerade dabei ein browsergame zu programmieren und jetzt ist mir eine grundlegende frage aufgekommen:
    Ich habe ein Design, wo in der mitte eine box ist, in der die verschiedenen seiten angezeigt werden.
    Wie ist es schlauer:
    1. Ich lade die seite gar nicht mehr neu, sondern mache bei einem link nur einen ajax aufruf für die mitlere box, wo ich dann die seite ohne design reinpacke
    2. Ganz normale vorgehensweise: Ich lade die seite bei jedem link klick neu

    Wo sind die Vor und Nachteile der verschiedenen versionen und warum wird die version 1, die ich eig. sehr gut finde nicht oft verwendet.

    Danke schon mal
    Lukas

  • #2
    Moin,

    naja wenn du Variante 1 ohne Fallback verwendest, sperrst du schonmal alle Besucher aus, die Javascript standardmäßig abgeschaltet haben. (So wie ich, benutzte NoScript). Würde ich auf so eine Seite kommen und die Navigation funktioniert nicht, weil Javascript aus ist und mich die Seite nicht schon beim ersten Aufruf überwältigt, würd ich direkt wieder gehen...
    Da musst du also zumindest rausfinden, ob der Besucher Javascript aktiviert hat und wenn nicht eine normale Navigation verwenden (kann man aber z.B. dadurch, dass man eine normale Navigation macht und in den onClick deinen AJAX-Aufruf mit nem return false packt).

    Wäre jetzt so mein erster Gedanke dazu.

    Gruß, Markus

    Kommentar


    • #3
      Bei richtiger Architektur kannst du beides realisieren. Die Links sind im "normalen" Zustand so das die Page neu geladen wird und somit man ganz normal surfen kann. Falls JS aktiviert ist werden diese Links aber abgefangen und anstatt die Seite neu zu laden der Inhalt einfach ausgetauscht. Somit kannst du beides realisieren.

      Und bei der AJAX Lösung musst du dir überlegen was passieren soll wenn außerhalb des Inhaltes sich mal was ändern soll. Z.B. User logged sich ein/aus.

      Kommentar


      • #4
        Also
        danke erst mal

        Also für das Browsergame was ich programmiere ist JS eine voraussetzung ohne JS soll und wird es gar nicht funktionieren.

        Ich möchte aber bewusst nur eine möglichkeit verwenden.
        Wenn ich die version 1 verwende, dann würde ich natürlich ein relode funktion für die teile, erstellen, die ab und zu neu geladen werden müssen und die dann neu laden wenn sie benötigt werden.

        Also was würdet ihr denn besser finden bei einem browsergame?

        Kommentar


        • #5
          Wenn es keine Seiten gibt, die man als Benutzer direkt aufrufen oder weitergeben will (denkbar bei einem Browsergame), kannst du es durchaus als AJAX-Anwendung realisieren.

          Aber dann gehe auch direkt einen Schritt weiter und denke nicht in "Seiten" die du in dein "Design" nachlädst sondern in einzelnen unabhängigen Inhalten und Daten, so dass du immer nur das vom Server abfragst was wirklich neu ist. Verstehst du was ich meine?
          [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
          [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

          Kommentar


          • #6
            ja es geht halt darum ich habe eine div box mit dem seiteninhalt und wenn ich die seite wechsle, dass dann einfach die div box per ajax neu eladen wird

            Kommentar


            • #7
              Und mir geht es darum, dass das am Sinn und Zweck von AJAX vorbeigeht.
              [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
              [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

              Kommentar


              • #8
                ja das war ja meine frage, ob es sinn macht das mit ajax zu realisieren, weil vorallem nicht immer die ganze seite neu geladen werden muss sondern nur die mittlere box

                Kommentar


                • #9
                  Zitat von fab Beitrag anzeigen
                  Aber dann gehe auch direkt einen Schritt weiter und denke nicht in "Seiten" die du in dein "Design" nachlädst sondern in einzelnen unabhängigen Inhalten und Daten, so dass du immer nur das vom Server abfragst was wirklich neu ist. Verstehst du was ich meine?
                  [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
                  [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

                  Kommentar


                  • #10
                    Wo ist überhaupt das Problem. Du kannst das so mit JavaScript lösen ... das ist ganz allein deine Entscheidung.

                    Kommentar


                    • #11
                      Zitat von luks2com Beitrag anzeigen
                      ja das war ja meine frage, ob es sinn macht das mit ajax zu realisieren, weil vorallem nicht immer die ganze seite neu geladen werden muss sondern nur die mittlere box
                      Vorweg: Du kannst es komplett, alles, in JS lösen. Aber Du musst daran denken, dass Du damit viele Benutzer aussperrst, die JS deaktiviert haben - was keinen Sinn macht, alles in JS zu machen. Und da macht es wieder Sinn statische Seiten festzulegen. Denn das bisschen Traffic wird keinen Weltuntergang verursachen..

                      Kommentar


                      • #12
                        Das wurde alles schon gesagt ....

                        Kommentar


                        • #13
                          Ne Überlegung ist auch wert, was passiert, wenn ein Nutzer mal aus Versehen doch F5 drückt, den Tab dupliziert o.ä. Dann sollte Dein Ajax sowei gehen, dass auch die aktuellen Spiel-/Inhaltsstände serverseitig hinterlegt sind. Sprich - die Datenhaltung muss bei PHP bleiben, nicht Javascript-seitig. Und wenn Du so weit bist, kannst Du im Prinzip auch gleich ne Non-JS-Alternative mit anbieten.
                          [COLOR="#F5F5FF"]--[/COLOR]
                          [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                          [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                          [COLOR="#F5F5FF"]
                          --[/COLOR]

                          Kommentar

                          Lädt...
                          X