Schrift
[thread]2303[/thread]

Seite neu laden >> an selbe stelle springen!



<< >> 7 Einträge, 1 Seite
Danwe
 2006-07-10 18:06
#24835 #24835
User since
2006-06-09
76 Artikel
BenutzerIn
[default_avatar]
Hi,

Mein Problem ist, dass ich eine Seite neu laden muss, u. dannach sollte an die selbe Stelle gesprungen werden.

mit Ankern habe ich das ganze nicht hinbekommen:

var location = window.location.href + "#Anker"
document.location.href = location;

Hier wird die Seite z.B. nicht neu geladen, sondern es wird einfach zum Anker gesprungen. Außerdem bleibt das #Anker in der Adressleiste, wenn ich also nochmal neu laden muss, dann habe ich 2 mal #Anker oder eben 2 Anker hinter der Adresse stehen!
Gibt es hier eine JavaScript lösung ohne Anker? Es ist egal, ob man die Seite nur mit JS aktiviert ansehen kann, die Lösung sollte einfach relativ einfach umzusetzen sein u. am besten haargenau dorthin zurückspringen, wo man sich gerade befindet, was mit Ankern ja nicht ganz so gut geht.

Wäre toll wenn jemand eine Lösung über JS hätte!
GwenDragon
 2006-07-10 18:18
#24836 #24836
User since
2005-01-17
14532 Artikel
Admin1
[Homepage]
user image
Code: (dl )
1
2
3
4
var location = window.location.href;
var d = new Date;
// getTime liefert die aktuelle Zeit im Millisekunden
window.location.href = location + '?' + d.getTime() + '#Anker';


Damit hat die URL immer einen neuen Parameter und müsste neu geladen werden ;)\n\n

<!--EDIT|GwenDragon|1152547807-->
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

Danwe
 2006-07-10 18:34
#24837 #24837
User since
2006-06-09
76 Artikel
BenutzerIn
[default_avatar]
ich verstehe dein Beispiel nicht so ganz!
Was machst du? gibtst du dem Hyperlink den man klickt etwa einen Anker u. klädst dann neu? Aber dann wird der Anker doch nicht mehr gefunden nach neu laden, außerdem sieht man den Link garnicht, der wird nähmlich auch dynamisch erstellt übers DOM.

Ich habe folgenden Ansatz im Sinne:

alert (window.pageYOffset);
window.pageYOffset = window.pageYOffset + 40;
alert (window.pageYOffset);

Ich übergebe die PageYOffset Possition an die Adresse im Browserfenster, und wenn die Page neu geladen wird, dann springt er an die Stelle die übergeben wird.
Wenn man das Beispiel nun aber ausprobiert, wird man feststellen, dass das window.pageYOffset + 40 nicht funktioniert, das heist man kann den Wert nur auslesen, nicht aber einen neuen definieren!? Gibts da noch einen Befehl mit dem das möglich wäre, den Wert zu setzen u. nicht nur auszulesen?


EDIT:
danke für die Hilfe, es funktioniert mit "scrollTo(x-wert, y-wert)" wunderbar!

Jetzt muss ich nur noch wissen wir man den y Wert an die Browserdomain anhängen kann, zusammen mit dem reload befehl, u. dann wenn geladen wurde, die Variable wieder auslesen kann aus der Domain.\n\n

<!--EDIT|Danwe|1152542716-->
GwenDragon
 2006-07-10 20:21
#24838 #24838
User since
2005-01-17
14532 Artikel
Admin1
[Homepage]
user image
Tut mir leid. Hier ist die Kühlung ausgefallen und die Sonne knallt ziemlich ins Zimmer. Da passieren Denkfehler.

scrollTo(0, YOffset);
Speichers in einem Cookie ;)\n\n

<!--EDIT|GwenDragon|1152549118-->
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

Danwe
 2006-07-11 12:29
#24839 #24839
User since
2006-06-09
76 Artikel
BenutzerIn
[default_avatar]
In einem Cookie? Keine ahnung wie das geht ???
Ich glaube es ist benutzerfreundlicher, wenn ich es einfach an die Adresse anhänge, oder?

das mache ich einfach über eine Stringoperation, ich hänge an die URL noch ?varname=varwert an, durch & kann man wohl verschiedene Vars trennen. Dannach noch eine Stringfunktion die mir das auswertet schreiben u. eine Stringfunktion, die das richtig anhängt u. das alte anhängsel vorher löscht.

Nur gits noch das Problem, dass wenn ich einen String nach einem ? durchsuchen möchte, das nicht geht, ? ist wohl irgendein regulärer ausdruck oder sonst was, was muss ich machen wenn ich nach einem Fragezeichen im String suchen möchte? Habe dafür keine sonderzeichen gefunden, z.B. \? wärs doch in Perl, oder?\n\n

<!--EDIT|Danwe|1152606739-->
betterworld
 2006-07-11 14:30
#24840 #24840
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
Es gibt doch in Javascript eine Funktion zum Neuladen (window.reload, wenn ich mich richtig erinnere). Sollte der Browser da nach dem Neuladen nicht automatisch an die richtige Stelle zurueckspringen?
Danwe
 2006-07-11 14:36
#24841 #24841
User since
2006-06-09
76 Artikel
BenutzerIn
[default_avatar]
Ne, das ist wie gesagt das was ich gemacht habe. Das ist wie wenn du den reload button klickst.
Die andere Lösung geht ja jetzt, mit Y Position aus u. einlesen.
<< >> 7 Einträge, 1 Seite



View all threads created 2006-07-10 18:06.