Javascript (class,rel) uitvoeren bij laden pagina

Pagina: 1
Acties:

  • Clock
  • Registratie: Maart 2005
  • Laatst online: 05:30
Goedenavond,

Een korte en waarschijnlijk simpele vraag, maar ik kom er niet uit (ook niet na een goede search).

Een lightbox wordt aangeroepen met de volgende hyperlink:
code:
1
<a href="" rel="lightbox1" class="lbOn">bla</a>


Hoe kan ik deze lightbox aanroepen met javascript zonder op de link te klikken, maar bij het openen van de pagina?

code:
1
2
3
4
5
6
7
8
9
<script type="text/javascript">
function test() {
 //roep lightbox aan
}
</script>

<body onLoad="test()">
bla
</body>


Alvast erg bedankt!


Edit: Excuus voor het ontbreken van de [JS] tag in de titel

[ Voor 6% gewijzigd door Clock op 12-02-2009 22:36 ]


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

lightbox attached waarschijnlijk een eventhandler aan alle links met een bepaald rel-attribuut. Je zal dus uit moeten zoeken welke functie hij attached aan die links en die functie dan zelf aanroepen :Y)

ander antwoord: wij hebben geen idee welke variant van lightbox je gebruikt, wat de eventuele documentatie daarover zegt (of niet), wat je zelf al hebt onderzocht mbt het script dat je gebruikt etcetera...

Intentionally left blank


  • DUX
  • Registratie: September 2002
  • Laatst online: 24-09 20:38

DUX

blijft ook nu voor Oranje

Je zou een muisklik kunnen simuleren :) Geef een id aan een onzichtbare href-link (die ik mijn voorbeeldje "lightboxVoorbeeld" heb genoemd) en roep deze aan met een javascriptblokje. Ik heb daartoe twee functies: eentje die muisacties kan na-apen en een andere functie die de URL in het onzichtbare links propt en dan een javascript-muisklik aanroept van die eerste functie.

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function fireEvent(obj,evt)
{
  var fireOnThis = obj;

  if( document.createEvent )
  {
    var evObj = document.createEvent('MouseEvents');
    evObj.initEvent( evt, true, false );
    fireOnThis.dispatchEvent(evObj);
  }
  else if( document.createEventObject )
  {
    fireOnThis.fireEvent('on'+evt);
  }
}

function DoeVoorbeeld(p_url)
{
  document.getElementById("lightboxVoorbeeld").href = p_url;
  fireEvent(document.getElementById("lightboxVoorbeeld"), 'click');
}


Of zoals hierboven gezegd uitzoeken welke functie Lightbox zelf aanroept en die direct aanspreken.

offtopic:
3000e post *O*

.    < G o o o o o o o o g l e >
Vorige 1 2 3 4 5 6 7 8 Volgende


Acties:
  • 0 Henk 'm!

  • Clock
  • Registratie: Maart 2005
  • Laatst online: 05:30
Ik heb geprobeerd de JS code van de lightbox te ontrafelen op zoek naar een 'showlightbox' functie, maar aangezien de boel in verschillende klassen is onderverdeeld en ik daar weinig kijk op heb is dat niet gelukt. Het is ook maar een simpel interne pagina, en een 'dirty' oplossing was in dit geval niet erg.

Met de fireEvent functie van DUX is het helemaal gelukt. Ik had deze oplossing al eerder geprobeerd door document.getElementById("link").click() te gebruiken, maar deze werkte niet in Firefox. Thanks!