![]() |
JS-Event för Back-button, finns det?
Jag har en site där jag laddar innehåll med AJAX och ändrar hash-värdet i adressfältet när innehållet ändras, på så sätt kan jag ju ladda rätt innehåll om användaren klistrar in en länk.
Jag skulle dock även vilja låta användaren använda "tebaks"-funktionen i webläsaren men problemet där är ju att webläsaren inte ser det som en ny sida om bara hash-värdet ändras. Det finns visserligen ett par JQuery-plugins som löser det här, men hur fungerar de egentligen? Hur löser de problemet med att veta när hash-värdet ändras? Ligger de och kollar x antal gånger per sekund eller finns det något event för tillbaks-knappen? Skulle bara behöva just tillbaks-knappseventet och inte allt annat som dessa JQuery-plugins skickar med. |
Det finns en onhashchange event men stöds bara av Firefox 3.6, IE8 och eventuella nya browsers som implementerade det sen jag kollade upp det :P
Oavsett så är inte stödet i närheten av heltäckande. I stort sett alla implementationer av historik/bokmärke etc för ajax-applikationer använder, som du antar, en timeout som kollar hash-värdet och triggar funktionen om det förändrats. Det finns några försök till alternativa sätt, men av de jag sett verkar alla sämre rent funktionellt och prestanda-förbättringen extremt minimal. |
Kod:
setInterval(function () { |
OK, tack. Ska testa något liknande!
|
Alla tider är GMT +2. Klockan är nu 17:02. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson