[js] Innerhalb einer Tabelle zu einer bestimmten Zeile scrollen
helmut
- javascript
0 H-P Ortner0 JürgenB
Hallo,
ich versuche eine JavaScript-Funktion zu implementieren, die es mir erlaubt, innerhalb einer Tabelle (deren tbody scrollbar (overflow:scroll) ist), zu einer bestimmten Tabellenzeile zu scrollen.
Mein erster Ansatz war die Definition eines Ankers innerhalb jeder Zeile, den ich bei Bedarf mittels JavaScript hätte anspringen können. Jedoch wird dieser Vorgang dann in der History abgelegt, sodass der Druck auf den "Zurück"-Knopf nicht mehr die zuletzt besuchte Seite herstellt sondern die Tabelle vor dem Sprung darstellt. Dieses Verhalten möchte ich nicht.
Gibt es eine Alternative?
Ich bitte darum, lediglich Hinweise zu geben, die mindestens in den Browsern Internet Explorer, Mozilla FireFox und Opera lauffähig sind.
Hallo Helmut!
...
Mein erster Ansatz war die Definition eines Ankers innerhalb jeder Zeile, den ich bei Bedarf mittels JavaScript hätte anspringen können. Jedoch wird dieser Vorgang dann in der History abgelegt, sodass der Druck auf den "Zurück"-Knopf nicht mehr die zuletzt besuchte Seite herstellt sondern die Tabelle vor dem Sprung darstellt. Dieses Verhalten möchte ich nicht.
Mit location.replace() wird der letzte Eintrag in der History überschrieben.
Ist zwar noch nicht ganz das was du suchst, aber eine kleine Verbesserung.
Viele Grüße
H-P Ortner
Hallo helmut,
ob das in Verbindung mit overflow:scroll geht, habe ich noch nicht ausprobiert. Aber versuch doch mal, mit
function get_top(obj) {
var curtop = 0;
if (obj.offsetParent) {
while (obj.offsetParent) {
curtop += obj.offsetTop
obj = obj.offsetParent;
}
}
else if (obj.y)
curtop += obj.y;
return curtop;
}
window.scrollTo(0,get_top(document.getElementById("ID des Elements")));
zu einem Element mit der entsprechenden ID zu springen.
Gruß, Jürgen