2010-11-18 8 views
1

ich einen Link ähnlich wie dieseHashes in URL Skript onload starten

www.mysite.com/profile/#openTheme

Wenn die Verbindung der Hash "#openTheme" i machen fehlte hat möchte, dass eine Funktion auf der Seite ausgeführt wird, wenn die Seite geladen wird.

Gibt es einen Weg, um einen Anker wie diese zum Beispiel zu setzen:

<a name="openTheme" onActivate="runScript()"> 

Oder gibt es einen besseren Weg, es zu tun? ZB ein Skript onload ausführen, um irgendwelche Standorthashes zu finden und if/else zu benutzen?

Danke.

+0

Es wäre nicht so einfach, sind Sie bereit, ein Framework wie jQuery zu verwenden oder sollte ich etwas zusammen in normalem JavaScript hacken? – Drew

Antwort

2

Sie können diese abholen mit diesem:

self.document.location.hash 

Diese #openTheme in diesem Fall zurück. Sie können ein dann tun, wenn, so ...

if(self.document.location.hash == '#openTheme') 
{ 
    //do something 
} 
+0

Arbeitete eine Belohnung! Danke Chef. – Moe

+0

Sie sind herzlich willkommen. –

0

Sie können die window.onhashchange Ereignis registrieren, die immer dann, wenn der Benutzer einen neuen Hash in die Adressleiste ausgelöst wird, oder einen Link, dass Punkte auf einen Hash geklickt wird auf der aktuellen Seite oder JavaScript setzt location.href auf "# something-or-other".