Springen naar anchor binnen div

Pagina: 1
Acties:

  • XKB
  • Registratie: Oktober 1999
  • Laatst online: 05-04-2021

XKB

Anonymous functional

Topicstarter
Ik probeer op dit moment binnen een pagina een div naar een bepaalde anchor te scrollen.

Als test heb ik dit gedaan:

HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<BODY onLoad="document.location='#current';">

  <div id="hahaha" style="width:500px;height:50px;overflow:auto">
    vette vlah!<br>
    vette vlah!<br>
    vette vlah!<br>
  </div>
  <div style="width:500px;height:50px;overflow:auto">
    blahb albhaldhfklsdfjsld<br>
    blahb albhaldhfklsdfjsld<br>
    blahb albhaldhfklsdfjsld<br>
    <a name="current">1111  --- blahb albhaldhfklsdfjsld</a><br>
  </div>
</BODY>

En dat werkt dus prima. De output hiervan is een divje met scrollbalken en als 1e regel 1111 --- etc.

In de productie pagina sprint onder IE echter de hele pagina naar boven, zodat de anchor als bovenste regel op de pagina staat! Enig id hoe dit kan en hoe ik het kan verhelpen?

Choose for Choice! Choose Linux! | src van icon


  • André
  • Registratie: Maart 2002
  • Laatst online: 26-05 00:33

André

Analytics dude

Wat is bij jou het verschil tussen test en productie? Gebruik je dan een andere browser ofzo? Heb je een voorbeeld online staan? In welke browser gaat het fout?

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:55

crisp

Devver

Pixelated

Het is niet document.location maar window.location, en in het geval van een anchor kan je net zo goed window.location.hash='#current' doen.
Echter begrijp ik dat je je div wil laten scrollen ipv het document, een beetje ambiguous situatie in dat geval, want hoe moet de UA nu bepalen wat hij moet scrollen. De div lijkt logisch, anders had je het anchor er wel buiten gelaten natuurlijk, maar IE doet wel eens maar gek :P

Misschien dat dit soelaas biedt:
JavaScript:
1
2
3
4
window.onload=function(){
  var scroll = document.getElementsByName('current').item(0).offsetTop || 0;
  document.getElementById('divje').scrollTo(0,scroll);
}

Intentionally left blank


  • XKB
  • Registratie: Oktober 1999
  • Laatst online: 05-04-2021

XKB

Anonymous functional

Topicstarter
André schreef op 18 december 2003 @ 17:29:
Wat is bij jou het verschil tussen test en productie? Gebruik je dan een andere browser ofzo? Heb je een voorbeeld online staan? In welke browser gaat het fout?
Het verschil is in dit geval de complexiteit van de pagina. Mijn test was alleen om te kijken of IE de anchor in de DIV zou scrollen of in de pagina.

Ik heb net als test eens de CSS uitgezet van de "productie" versie, niet op de live server natuurlijk... En dan doet ie het weer wel... Dus het lijkt iets met de CSS te maken te hebben.

Choose for Choice! Choose Linux! | src van icon