Solved

Show alert when back button is pressed

Posted on 2006-11-22
9
3,261 Views
Last Modified: 2011-10-03
Hi all,

how can I show a message box when the back button is pressed?

Thanks
0
Comment
Question by:zattz
  • 3
  • 2
  • 2
  • +2
9 Comments
 
LVL 3

Expert Comment

by:viveksg
ID: 18001013
<script>
 window.close = function(){alert("your message");}
</script>
0
 
LVL 6

Expert Comment

by:aescnt
ID: 18001050
Don't you mean window.onunload?
Although, even clicking a link or going forward will make the event fire.
0
 

Author Comment

by:zattz
ID: 18001057
Dosn't work
0
 
LVL 6

Accepted Solution

by:
aescnt earned 250 total points
ID: 18001073
<html>
<head>
<script type="text/javascript">
window.onunload = function() { alert("You navigated out of the page."); }
</script>
</head>
<body>Try hitting the back button or something.</body>
</html>

IE and Firefox tested.
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 51

Expert Comment

by:ahoffmann
ID: 18001339
> .. show a message box when the back button is pressed?
impossible (except patching the browser)
0
 
LVL 75

Assisted Solution

by:Michel Plungjan
Michel Plungjan earned 250 total points
ID: 18001352
As you said yourself:
"Try hitting the back button or something" where "something" is also "clicking a link or going forward"

This is such a FAQ.

zattz, please tell us why you need this functionality and perhaps we can give you a solution that does no require this alert.

For example to not HAVE a page to go back to, you can have a link on the page before:
<a href="page2.html" onClick="location.replace(this.href); return false">Replace this page with page 2</a>

Also you can do some things with framesets to avoid the alert to be triggered when moving back, and you can use this to stop links from triggering:

<body onLoad="leaving=false" onUnload="if (leaving) alert('Sorry to see you go')">
<a href="http://www.google.com/search?q=back+button+javascript" onClick="leaving=true">Leave for Google</a>
<a href="page2.html" >Staying on the site</a>
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 18002598
window.onunload() does not work if you navigate with the browser's back button from http://..../this#that to http://..../this

Hence this is not a working answer if you read the question verbatim.
Just my 2 pence ...
0
 
LVL 6

Expert Comment

by:aescnt
ID: 18002625
Hehe, yep... it's really not the fix for that. In fact, onunload is a very unreliable way to detect back navigations, I admit.
If you want to detect back navigations from this.htm#that to this.htm, I'd put a timer that checks window.location.hash -- I believe this method is being used by a few Flash-based websites to detect back button clicks.
0
 

Author Comment

by:zattz
ID: 18002652
Hmm..

that window.location.hash is interesting,

but anyway the onunload is good enough for the page I want it on.

thanks guys
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I've been trying to accomplish this for a while and it just struck me yesterday how to accomplish this task. I have done searches all over the internet looking for ways to email pages from my applications and finally I have done it!!! Every single s…
Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

929 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now