iframe auf bestimmte Stelle scrollen
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
anfang
apache
ausgegeben versuch
bestimmt position
code
eigenschaft
erlaubnis
ersten zeile
fehler
funktion
grad
inhalt
konsole
machen
message
opus
position
problem
tag
versuch
-
Hallo,
mich würde interessieren wie ich einen iframe automatisch auf ein tag/bestimmt position">bestimmt Position scrollen kann.
Also ich binde einen iframe ein und das ist ja dann natürlich die ganze Seite, bzw. man sieht das was in der ersten \"Zeile\" steht.
Wie kann ich es nun machen das der iframe automatisch in zB der 8. Zeile steht?
Hoffe ihr wisst was ich mein ;)
PS.: Hab gegoogelt und da ist nicht wirklich was rausgekommen ... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Im IFrame Anker setzen und dann als z.B. blabla.html#dings einbinden
-
Sry, hab vergessen zu sagen das ich auf den Inhalt des iframe keinen Einfluß habe. ;)
-
scrollTo() wäre eine Möglichkeit:
javascript:window.frames[\'iframeName\'].scrollTo(x-Position,y-Position);
z.B.
javascript:window.frames[\'iframe1\'].scrollTo(0,100)
-
Danke schon mal.
Die Funktion macht genau das was ich haben will, doch funzts bei mir nicht.
(Habs nicht so mit Js)
Das wird am Ende der Datei reingeschrieben.
Ist doch eh egal dass das in ganz am Schluß im body steht, oder?
<script type=\"text/javascript\"> function posFrames() { alert(\'Frames sollten jetzt gescrollt werden ...\'); for(var i = <?php echo $count?>; i>=1; i--) { window.frames[i].scrollTo(0, 100); } } </script>
Ja und im body-Tag hab ich dann das stehen:
<body onLoad=\"posFrames()\">
Funktionen tuts aber nicht.
(Es wird nicht mal das alert ausgegeben...) -
*in ein tiefes Loch verkriech*
Hatte Js für localhost ausgeschaltet ...
Zumindest wird die Funktion jetzt aufgerufen, da der alert angezeigt wird.
Doch wird leider nichts gescrollt!?
<script type=\"text/javascript\"> function posFrames() { for(var i = 19; i>=1; i--) { framename = \"friendframe_\" + i; window.frames[framename].scrollTo(10, 10); } } </script>
Es stört eh nicht wie dir Frames ausgegeben sind oder?
Also es im Quelltext ist zuerst \'friendframe_1\'
-
Es stört eh nicht wie dir Frames ausgegeben sind oder?
Also es im Quelltext ist zuerst \'friendframe_1\'
Versteh ich nicht ganz ... mit frames[0], frames[1] etc. sollte es eigentlich funktionieren, mit dem Namen der Frame ebenfalls (solange diese Frames auch \"definiert\" sind). Dumme frage, aber bist du sicher dass der Inhalt der Frames höher als die Frame selber ist?
Zeigt die Fehler Konsole nichts?
Hails -
Also meine Frames werden dynamisch mit PHP ausgegeben:
zB
<iframe src=\"http://domain.tld/?id=12345\" width=\"100%\" height=\"50\" name=\"friendframe_1\" id=\"friendframe_1\"></iframe>
...
Und das Js soll diese generierten Frames dann eben etwas runterscrollen.
Die Fehlerconsole von Opera gibt das aus:
JavaScript - http://localhost/philipp/scripts/index.php
Event thread: load
Error:
name: Error
message: Security violation
stacktrace: n/a; see \'opera:config#UserPrefs|Exceptions Have Stacktrace\'
Beitrag geändert: 26.6.2008 19:57:47 von philippkern -
Hmm ich verwende nicht Opera, aber es sieht so aus als ob da ein Problem mit onload=\"\" ist ...
Versuch es mal mit window.onload = posFrames; und nicht mit dem onload=\"posFrames()\".
Hails -
Hmm ich verwende nicht Opera, aber es sieht so aus als ob da ein Problem mit onload=\"\" ist ...
Versuch es mal mit window.onload = posFrames; und nicht mit dem onload=\"posFrames()\".
Hails
Hmm, auch nicht. :(
Habs das ins body getan, und auch mal vor der JS-Funktion ... -
Hast du noch mehr JS in deinem Code, neben der Funktion posFrames()?
Welcher fehler wird denn gemeldet wenn du es im Firefox ausführst?
Hails -
Bin grad draufgekommen das FF localhost nicht kennt, also es kommt immmer eine weiße Seite, geb ich aber 127.0.0.1 ein geht ...
Also die Fehlerkonsole gibt uA das aus \"Fehler: uncaught exception: Die Erlaubnis für das Lesen der Eigenschaft Window.scrollTo wurde verweigert\".
Kann es sein das das irgendwie durch ein Js in den iframe-Seiten verboten wird?
Hier nochmal das aktuelle Script:
<script type=\"text/javascript\"> window.onload = posFrames; function posFrames() { for(var i = <?php echo $count?>; i>=1; i--) { framename = \'friendframe_\' + i; window.frames[framename].scrollTo(10, 10); } } </script>
-
Bin grad draufgekommen das FF localhost nicht kennt, also es kommt immmer eine weiße Seite, geb ich aber 127.0.0.1 ein geht ...
Das liegt daran, dass localhost bei deinem Apache wahrscheinlich nicht als 127.0.0.1 definiert ist ... Opera erkennt localhost anscheinend von Anfang an schon als 127.0.0.1.
Also die Fehlerkonsole gibt uA das aus \"Fehler: uncaught exception: Die Erlaubnis für das Lesen der Eigenschaft Window.scrollTo wurde verweigert\".
Hmm... die Eigenschaft Window.scrollTo wird ja gar nie gelesen. Was befindet sich denn genau in den iFrames? Eine lokale Seite oder extern?
Hails -
Bin grad draufgekommen das FF localhost nicht kennt, also es kommt immmer eine weiße Seite, geb ich aber 127.0.0.1 ein geht ...
Das liegt daran, dass localhost bei deinem Apache wahrscheinlich nicht als 127.0.0.1 definiert ist ... Opera erkennt localhost anscheinend von Anfang an schon als 127.0.0.1.
Achso ..
Du weißt nicht zufällig wie man das macht? ;)
Also die Fehlerkonsole gibt uA das aus \"Fehler: uncaught exception: Die Erlaubnis für das Lesen der Eigenschaft Window.scrollTo wurde verweigert\".
Hmm... die Eigenschaft Window.scrollTo wird ja gar nie gelesen. Was befindet sich denn genau in den iFrames? Eine lokale Seite oder extern?
Hails
Eine externe Seite.
Kann es den sein dass das von dieser geblockt wird?
Aber ich seh da weit und breit kein Js.
Nja, egal.
Ist dann nicht sooo wichtig.
Vielen Dank für deine Hilfe. ;)
-
Also ich habe auch sehr lange nach einer Lösung zu diesem Problem gesucht, mit Javascript gibt es keine Möglichkeit aber mit CSS.
<div style="height:400px; overflow:none;">
<iframe style="margin-top:-100px" ......></iframe>
</div>
Schneidet z.B oben 100 px ab. Dasselbe kann man nun natürlich auch mit margin-left, margin-right oder margin-bottom durchführen.
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage