Rysk: iframe - Bilder blockieren, schnelleres Laden

Hallo,

ich habe einen iframe, der mir eine Website läd, welche ich anschließend auslese. Da ich den iframe in einem div mit display:none habe und er somit sowieso nicht angezeigt wird, sondern nur als Datenquelle dient, muss ich ja die Bilder der Website im Frame nicht jedesmal mit laden. Kann man diese auf einfache Art und Weise blockieren?

Oder gibt es gar eine elegantere Lösung als einen iframe um an die Daten der Website heranzukommen?

-- Danke, Rysk

  1. ich habe einen iframe, der mir eine Website läd, welche ich anschließend auslese.

    Meinst du Website im Sinne von domain, oder meinst du Webseite im Sinne von Ressource?

    Da ich den iframe in einem div mit display:none habe und er somit sowieso nicht angezeigt wird, sondern nur als Datenquelle dient, muss ich ja die Bilder der Website im Frame nicht jedesmal mit laden. Kann man diese auf einfache Art und Weise blockieren?

    Sofern du mit "jedes Mal" einen normalen Request meinst, der ein neues Dokument aufbaut, so wird auch das Javascript jedes Mal neu ausgeführt.
    Was immer vorher ein Script vorher im Speicher hatte, geht verloren, sofern du es nicht in Cookies abgelegt hast.
    Ja und natürlich ist es möglich, das unnötige Laden von Bildern zu verhinden: Verwende keine <img> Elemente.

    Oder gibt es gar eine elegantere Lösung als einen iframe um an die Daten der Website heranzukommen?

    Brauchst du wirklich die Bilder oder nur die Urls zu den Bildern?
    Dann übertrage nur die Urls und liess sie aus, nicht aber fertig eingebaute <img> Elemente.

    Kann es sein, dass wir hier ein Website Problem haben?

    mfg Beat

    --
    ><o(((°>           ><o(((°>
       <°)))o><                     ><o(((°>o
    Der Valigator leibt diese Fische
    1. Hallo,

      Brauchst du wirklich die Bilder oder nur die Urls zu den Bildern?
      Dann übertrage nur die Urls und liess sie aus, nicht aber fertig eingebaute <img> Elemente.

      nein, ich denke, er will überhaupt keine Bilder. Er lädt eine Seite in ein unsichtbares iFrame. Alles, was da an Text drinsteht, will er haben. Die Bilder verzögern aber unnötig und ungewollt seine Ladezeit. Und da er diese verkürzen will, will er eben keine Bilder, aber trotzdem die (Text)Daten.

      Vorschlag: Lade die Seite einfach Serverseitig ( z.b.: PHP ) ...
      So kannst du auch das iFrame weglassen.
      Falls deine Seite, die du laden willst, nicht von der Domain ist, die du nutzt, so hast du ein Problem mit der SOP ...
      Wenn du die Seite doch Serverseitig ausliest und sie kommt von einer anderen Domain, so musst du natürlich erst den Betreiber um erlaubnis bitten.

      MfG. Christoph Ludwig

      --
      Wo die Sprache aufhört, fängt die Musik an...
      Selfcode:  sh:) fo:) ch:° rl:( br:^ n4:} ie:{ mo:} va:) js:| de:] zu:) fl:( ss:| ls:~
      Go to this
      1. nein, ich denke, er will überhaupt keine Bilder. Er lädt eine Seite in ein unsichtbares iFrame. Alles, was da an Text drinsteht, will er haben. Die Bilder verzögern aber unnötig und ungewollt seine Ladezeit. Und da er diese verkürzen will, will er eben keine Bilder, aber trotzdem die (Text)Daten.

        Ganz genau so ist es.

        Das Problem ist, dass es sich bei meiner Seite um die Wallpaper.html des iPhones handelt und ich somit keinerlei serverseitige Möglichkeiten habe.

        Momentan habe ich wie gesagt einen unsichtbaren div und darin den iframe, der die Startseite einer bekannten Social-Community für Studenten lädt und dort schaut, ob neues Nachrichten gekommen sind.

        Mir steht HTML und JS auf dem iPhone zur Verfügung - das funktioniert auch problemlos. So wie es jetzt läuft, lade ich nun leider bei jedem mal Aktualisieren die 35kB große Mobil-Version der Start Seite mit 3 Bildern drauf. Kann ich dem iframe mitteilen, dass er die Bilder nicht laden soll?

        Oder müsste ich das ganze über einen XmlHTTPReqeust machen, bzw. würde das funktionieren?

        1. Momentan habe ich wie gesagt einen unsichtbaren div und darin den iframe, der die Startseite einer bekannten Social-Community für Studenten lädt und dort schaut, ob neues Nachrichten gekommen sind.

          Das kann nicht gehen. Wegen der same orgin policy hast du normalerweise keinen Zugrigg mit JS über Domaingrenzen hinweg.

          Kann ich dem iframe mitteilen, dass er die Bilder nicht laden soll?

          nein.

          Oder müsste ich das ganze über einen XmlHTTPReqeust machen, bzw. würde das funktionieren?

          ja, aber auch dort greift die SOP.

          Struppi.

          1. Tach,

            Das kann nicht gehen. Wegen der same orgin policy hast du normalerweise keinen Zugrigg mit JS über Domaingrenzen hinweg.

            ich vermute mal, dass die SOP für Applikationen, die im iPhone laufen nicht wirksam ist, sonst wäre dort kein Nachladen von Informationen möglich.

            mfg
            Woodfighter

            1. ich vermute mal, dass die SOP für Applikationen, die im iPhone laufen nicht wirksam ist, sonst wäre dort kein Nachladen von Informationen möglich.

              mfg
              Woodfighter

              Das könnte sein - schließlich funktioniert es ja in der momentanen "iframe-Version". Und wenn diese funktioniert, würde dann das ganze auch per XmlHttpReq. laufen?

              1. Das könnte sein - schließlich funktioniert es ja in der momentanen "iframe-Version".

                üblicherwiese ist das ein grosses Sicherheitsloch, ich kann aber keinen Hinweis darauf finden, dass der ipod dieses hat.

                Struppi.

                1. Tach,

                  üblicherwiese ist das ein grosses Sicherheitsloch, ich kann aber keinen Hinweis darauf finden, dass der ipod dieses hat.

                  nein, das ist kein Sicherheitsloch, es geht hier nicht um Code auf einer Webseite sondern um Code in einer installierten Applikation, die bereits mit den Rechten des Benutzers läuft, vergleichbar mit einem Firefox-Addon.

                  mfg
                  Woodfighter

                  1. » üblicherwiese ist das ein grosses Sicherheitsloch, ich kann aber keinen Hinweis darauf finden, dass der ipod dieses hat.

                    nein, das ist kein Sicherheitsloch, es geht hier nicht um Code auf einer Webseite sondern um Code in einer installierten Applikation, die bereits mit den Rechten des Benutzers läuft, vergleichbar mit einem Firefox-Addon.

                    Ich hab keine Ahnung wie du das alles weißt, wir haben bisher nur wenig Informationen.

                    Wallpaper.html klingt ja eher nach einer lokalen Seite und nicht nach einem AddOn, was ein grosser Unterschied wäre.

                    Struppi.

                    1. Tach,

                      Wallpaper.html klingt ja eher nach einer lokalen Seite und nicht nach einem AddOn, was ein grosser Unterschied wäre.

                      ja, ich würde allerdings davon ausgehen, dass ein lokal geöffnetes Dokument mehr darf als eine Seite, die über HTTP kommt, und Wallpaper.html ist ein lokales Dokument, dass sich meines wissens nur auf einem gemoddeten iPhone austauschen/bearbeiten läßt; ich vermute also (und da hast du recht, ich weiß nicht sondern vermute nur) dass diese HTML-Datei mehr Rechte hat als üblich.

                      mfg
                      Woodfighter

                      1. » Wallpaper.html klingt ja eher nach einer lokalen Seite und nicht nach einem AddOn, was ein grosser Unterschied wäre.

                        ja, ich würde allerdings davon ausgehen, dass ein lokal geöffnetes Dokument mehr darf als eine Seite,

                        im Firefox nicht und bei mir im IE 7 auch nicht (ich nehm an das kann man einstellen).

                        ich vermute also (und da hast du recht, ich weiß nicht sondern vermute nur) dass diese HTML-Datei mehr Rechte hat als üblich.

                        Schade, ich dachte ich könnte hier im thread interessante neue Dinge erfahren. Wie schon gesagt, normalerweise funktionieren JS Zugriffe nicht über Domaingrenzen hinweg. Wenn das auf dem ipod funktioniert, wäre es interessant zu Wissen, wann, mit welchen Browser und ob das alle Eigenschaften betrifft.

                        Ich hab zwar mal ein bisschen recherchiert, aber nichts gefunden, daher ist es bisher die Behauptung eines einzelnen, oder kannst du dieses Verhalten bestätigen?

                        Struppi.

                        1. Tach,

                          Wie schon gesagt, normalerweise funktionieren JS Zugriffe nicht über Domaingrenzen hinweg. Wenn das auf dem ipod funktioniert, wäre es interessant zu Wissen, wann, mit welchen Browser und ob das alle Eigenschaften betrifft.

                          der Browser ist zwangsweise Safari, allerdings wird die Seite ja als Desktophintergrund eingebunden und nicht im Browser angezeigt.

                          Ich hab zwar mal ein bisschen recherchiert, aber nichts gefunden, daher ist es bisher die Behauptung eines einzelnen, oder kannst du dieses Verhalten bestätigen?

                          Mein iPod läuft mit der hat keinen Jailbreak hinter sich, also leider nein.

                          mfg
                          Woodfighter

                          1. » Wie schon gesagt, normalerweise funktionieren JS Zugriffe nicht über Domaingrenzen hinweg. Wenn das auf dem ipod funktioniert, wäre es interessant zu Wissen, wann, mit welchen Browser und ob das alle Eigenschaften betrifft.

                            der Browser ist zwangsweise Safari, allerdings wird die Seite ja als Desktophintergrund eingebunden und nicht im Browser angezeigt.

                            Ahh Safari, das war mir nicht klar. Der kann zumindest bei mir, von lokalen Seiten auf x-beliebige Seiten in einem iframe zugreifen. Ein XMLHttpRequest scheiont aber nicht zu funktionieren.

                            Struppi.