![]() |
|
|||||||
| Newsgroup de.comp.lang.javascript Programmiersprache JavaScript. |
![]() |
|
|
Themen-Optionen | Ansicht |
|
#1
|
|||
|
|||
|
Gruss Gott
Ich habe bisher immer dieses kleine Script in allen meinen Seiten gehabt: <script type="text/javascript"> <!-- if(top.frames.length > 0) top.location.href="self.location"; //--> </script> Jetzt habe ich aber gelesen, dass das schlecht sei aber es stand nicht warum. Aus welchen Gründen soll das nicht drin sein? Ist es veraltet? Sollte ich es überall entfernen oder kann ich es lassen? Gibt es was besseres, um sich nicht in fremden Frames zu verfangen? Ich möchte hinzufügen, dass ich keine Ahnung von js habe. Danke im voraus. Benny |
|
|
||||
|
||||
|
|
|
#2
|
|||
|
|||
|
Benny Blomberg schrieb:
> Ich habe bisher immer dieses kleine Script in allen meinen Seiten > gehabt: > > <script type="text/javascript"> > <!-- > if(top.frames.length > 0) > top.location.href="self.location"; > //--> > </script> > > Jetzt habe ich aber gelesen, dass das schlecht sei aber es stand nicht > warum. Schlecht daran sind drei Dinge: 1. Die Kommentare um das Skript. Das war damals (Netscape 3) ein Trick, damit Browser, die das Script-Tag nicht kennen, den Inhalt nicht darstellen. Heute kennen alle Browser das Script-Tag, also kannst Du die Kommentare weglassen. 2. self.location darf nicht in Anführungszeichen stehen. 3. Die Lösung baut auf Javascript auf. Wer das deaktiviert hat (oder sonst ein wenig Ahnung hat), wird Deine Seite trotzdem in fremden Framesets sehen können. Eine Lösung, die auch ohne Javascript funktioniert, gibt es nicht. Warum möchtest Du denn die Anzeige Deiner Seiten in Frames verhindern? Gruß, Matthias |
|
#3
|
|||
|
|||
|
Benny Blomberg schrieb:
> Gruss Gott > > Ich habe bisher immer dieses kleine Script in allen meinen Seiten > gehabt: > > <script type="text/javascript"> > <!-- > if(top.frames.length > 0) > top.location.href="self.location"; > //--> > </script> Erstens ist der Code falsch. self.location wird hier als Text übergeben - d.h. als URL wird eben "self.location" gesetzt und nicht die echte URL. Besser, siehe <http://de.selfhtml.org/javascript/beispiele/seitenanzeige.htm>: <script type="text/javascript"> if (top != self) top.location = self.location; </script> Trotzdem halt ich solche Spielereine für eine schlechte Idee, da sowas nur funktioniert, wenn beim Benutzer JavaScript läuft - d.h. die Seite verhält sich je nach dem, ob JavaScript möglich ist oder nicht komplett anders. Zudem gibt es einige Dienste, die ganz bewusst Frames benutzen - z.B. Google Bildersuche, die bei Fundstellen oben die Adresse und ein Thumbnail vom gefundenen Bild anzeigt und darunter in einem eigenen Frame die Seite, wo das Bild zuletzt gefunden wurde. Wenn man sowas für seine eigenen Seiten nicht will - eine geeignete robots.txt hilft, auch Google hält sich daran. > Aus welchen Gründen soll das nicht drin sein? Ist es veraltet? Sollte > ich es überall entfernen oder kann ich es lassen? Gibt es was besseres, > um sich nicht in fremden Frames zu verfangen? Ich möchte hinzufügen, > dass ich keine Ahnung von js habe. Warum willst Du überhaupt "in fremde Frames verfangen" verhindern? Wenn Du den Verdacht hast, dass jemand deine Seiten unerwünscht in eigene Frames einbindet, dann ist ein Hinweis an den Betreiber meist sinnvoller. -- http://arnowelzel.de http://de-rec-fahrrad.de |
|
#4
|
|||
|
|||
|
Arno Welzel wrote:
[...Weisheiten gespeichert. Danke!...] > Warum willst Du überhaupt "in fremde Frames verfangen" verhindern? > Wenn Du den Verdacht hast, dass jemand deine Seiten unerwünscht in > eigene Frames einbindet, dann ist ein Hinweis an den Betreiber meist > sinnvoller. Ich will ganz einfach nur, dass meine Seiten sich in einem eigenen Fenster öffnet, das ist alles. Benny |
|
#5
|
|||
|
|||
|
Matthias Reuter wrote:
[....] > > Schlecht daran sind drei Dinge: > > 1. Die Kommentare um das Skript. Das war damals (Netscape 3) ein > Trick, damit Browser, die das Script-Tag nicht kennen, den Inhalt > nicht darstellen. Heute kennen alle Browser das Script-Tag, also > kannst Du die Kommentare weglassen. > > 2. self.location darf nicht in Anführungszeichen stehen. > > 3. Die Lösung baut auf Javascript auf. Wer das deaktiviert hat (oder > sonst ein wenig Ahnung hat), wird Deine Seite trotzdem in fremden > Framesets sehen können. Eine Lösung, die auch ohne Javascript > funktioniert, gibt es nicht. Interessant. Danke! > Warum möchtest Du denn die Anzeige Deiner Seiten in Frames verhindern? Meine Seiten haben sich gefälligst in einem eigenen Fenster zu öffnen. Benny |
|
#6
|
|||
|
|||
|
On Fri, 06 Nov 2009 10:42:29 +0100, Benny Blomberg <spam_kuebel*gmx.at>
wrote: > Meine Seiten haben sich gefälligst in einem eigenen Fenster zu öffnen. Das erreichst du damit aber nicht. Du "klaust" ja das vorhandene Fenster.. |
|
#7
|
|||
|
|||
|
Matthias Reuter schrieb:
> 1. Die Kommentare um das Skript. Das war damals (Netscape 3) ein Trick, > damit Browser, die das Script-Tag nicht kennen, den Inhalt nicht > darstellen. Das ist zwar prinzipiell richtig, aber schon Netscape 2 konnte Javascript. Es ging also schon damals um veraltete Browser, die kaum anzutreffen waren. Struppi. |
|
#8
|
|||
|
|||
|
*Matthias Reuter* wrote on Fri, 09-11-06 09:59:
>wird Deine Seite trotzdem in fremden Framesets sehen k÷nnen. Eine >L÷sung, die auch ohne Javascript funktioniert, gibt es nicht. Dem Betrachter wird das relativ egal sein. Es geht darum, daß niemad fremde Seiten einfach vereinnahmen kann. Es gibt eine Lösung, die zwar nicht sofort funktioniert aber beim ersten Klick: <BASE TARGET="_top"> im Seitenkopf > Warum m÷chtest Du denn die Anzeige Deiner Seiten in Frames verhindern? Das sollte eigentlich klar sein. Niemand möchte, daß seine Arbeit von einem anderen gekapert und als Teil von dessen Auftritt ausgegeben wird. Im Titel steht dabei der Name des Frameset und gebookmarkt wird auch nur das. |
|
#9
|
|||
|
|||
|
*Arno Welzel* wrote on Fri, 09-11-06 10:08:
>Warum willst Du nberhaupt "in fremde Frames verfangen" verhindern? Wenn >Du den Verdacht hast, dass jemand deine Seiten unerwnnscht in eigene >Frames einbindet, dann ist ein Hinweis an den Betreiber meist sinnvoller. Warum willst Du überhaupt Deine Wohnung abschließen? Wenn Du den Verdacht hast, jemand habe Deine Wertsachen gestohlen, ist es meist sinnvoller, zu demjenigen hinzugehen und sie wiederzuholen. |
|
#10
|
|||
|
|||
|
Benny Blomberg wrote:
> Ich habe bisher immer dieses kleine Script in allen meinen Seiten > gehabt: > [...] > Jetzt habe ich aber gelesen, dass das schlecht sei aber es stand nicht > warum. Es ist schon deshalb schlecht, weil Du nicht weisst, warum es tut was es (vielleicht) tut. > [...] Ich möchte hinzufügen, dass ich keine Ahnung von js habe. Dann lern es. <http://dcljs.de/> PointedEars |
|
|
|
|
![]() |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Erstellt von | Forum | Antworten | Letzter Beitrag |
| header(Location: | Mathias Fiedler | Newsgroup de.comp.lang.php.misc | 5 | 04-09-2009 04:22 PM |
| Sites and Services -Location- | Stefan 'Birdie' Vogel | Newsgroup microsoft.public.de.german.windows.server.active_directory | 0 | 12-17-2008 11:20 AM |
| Location Problem | Andrea Müller | Newsgroup microsoft.public.de.german.entwickler.dotnet.csharp | 1 | 07-07-2008 10:39 PM |
| Form.Location | Werner Perplies | Newsgroup microsoft.public.de.german.entwickler.dotnet.csharp | 5 | 06-18-2008 06:26 AM |
| [HH] Location mit bahnbezug | Knud Schlotfeld | Newsgroup de.etc.bahn.misc | 18 | 06-04-2008 05:36 PM |