Solved

Show alert when back button is pressed

Posted on 2006-11-22
9
3,260 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
Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

 
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

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

In Part 1 (http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/A_7849-Hex-Maze.html) we covered the hexagonal maze basics -- how the cells are represented in a JavaScript array and how the maze is displayed.  In this part, we'…
Having worked on larger scale sites, we found out that you are bound to look at more scalable solutions to integrating widgets, code snippets or complete applications and mesh them into functional sites, in any given composition. To share some of…
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…

758 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

20 Experts available now in Live!

Get 1:1 Help Now