문제

My webpage runs a javascript function when the page is loaded. However, I don't want the function to run if the user comes back to this page using the back button. How can I prevent this using javascript?

$(document).ready(function(){
  // Do not run this function if the user has arrived here using the back button  
  RefreshThePage();
});
도움이 되었습니까?

해결책

I'd have thought that using cookies is the easiest way to do this

다른 팁

I think studying the way Struts handles duplicate form submissions could help you.

Some links:

http://www.techfaq360.com/tutorial/multiclick.jsp

http://www.java-samples.com/showtutorial.php?tutorialid=582

http://www.xinotes.org/notes/note/369/

Track when user hits back button on the browser

There are multiple ways of doing it, though some will only work in certain browsers. One that I know off the top of my head is to embed a tiny near-invisible iframe on the page. When the user hits the back button the iframe is navigated back which you can detect and then update your page. Here is another solution.

You might also want to go view source on something like gmail and see how they do it.

Here's a library for the sort of thing you're looking for by the way

The event object offers you to get the key code. so basically you register an eventlistener onKeyDown. Use the received event. if the keycode matches the key you like continue with your function.

document getElementById('elementId').onKeyDown = checkKey();
function checkKey(event) {
  if (event.keyCode === keyCode) then . . . 
}

play around with alert(event.keyCode); to find the right one.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top