How to catch browser close event excluding navigation events

Hi,
I tried using onBeforeUnload event and onUnload events.. but they are catching navigation events within the same site. Could you please let me know how I can catch browser close events without catching Navigation events?
Thanks.

Just set them to null when navigation takes place.
Said that, you should be asking Javascript/DHTML related questions in a forum devoted to Javascript/DHTML. There are ones at webdeveloper.com and dynamicdrive.com. This has nothing to do with Java.

Similar Messages

  • How to detect browser close event in flex ?

    How to detect browser close event in flex ?

    This link may help:
    http://cookbooks.adobe.com/post_Close_event_of_browser_or_browser_tab-18211.html
    Best,

  • Catching browser close event and showing my own popup

    Hi,
    I want to show my own warning popup on browser close event. Kindly help me with the solution.
    Thanks a lot in advance.
    Lavanya.

    Lavanya,
    I don't think you could show a ADF Popup during the onload event. Instead, you could use javascript's confirm method to prompt the user to choose what they want to do and perform that operation accordingly.
    Ex :
    jspx code
       <af:document id="d1" onunload="performUnloadEvent" clientComponent="true">
                <af:resource type="javascript">
                  // For Mozilla and Firefox
                  if(window.addEventListener){
                  window.addEventListener('beforeunload', function (event) {
                    showConfirm();
                  // For IE
                  else if(window.attachEvent){
                       window.attachEvent('onbeforeunload', function (event) {
                    showConfirm();
                  function showConfirm(){
                          var eventSource = AdfPage.PAGE.findComponentByAbsoluteId('d1');
                          var sel = confirm("Are you sure you want to exit?");
                        if(sel==true){
                            alert('Perform OK Operation');
                            var x = AdfCustomEvent.queue(eventSource, "handleOnUnload", {result : 'ok'},false);
                            var y = 0;
                        else {
                        alert('Perform Cancel Operation');
                         var x = AdfCustomEvent.queue(eventSource, "handleOnUnload", {result : 'cancel'},false);
                         var y = 0;
                </af:resource>
                <af:serverListener type="handleOnUnload" method="#{UnloadHandler.onUnloadHandler}"/>
                <af:form id="f1" clientComponent="true">
                </af:form>
            </af:document>onUnloadHandler method in bean
        public void onUnloadHandler(ClientEvent clientEvent) {
            System.out.println("Unload Event fired..");
            String outcome = clientEvent.getParameters().get("result").toString();
            if(outcome.equalsIgnoreCase("ok")){
                System.out.println("Outcome is OK ");
                // Perform some operation like Commit;
            else if(outcome.equalsIgnoreCase("cancel")){
                System.out.println("Outcome is Cancel ");
                // Perform some cleanup operation like Rollback;
        }-Arun

  • How to catch cursor changes without triggering an event

    Hi all,
    I have issue and I wasn't able to find my solution in Forums.
    I have a screen 1000, and on this screen I have text fields.
    One of them is matnr and when a user enters a entry in matnr field I have to catch the number so I can fill the other fields on screen. While doing that, I shouldn't trigger an event, for example pressing enter.
    User just enters matnr and and changes the cursor.
    I will be waiting for your response..

    Hi,
    I think this is not possible. Because the other fields related to a MATNR are not available in application layer ( front end). So you will fetch the details using a code running in presentation layer( back end ). So any way you have to trigger PAI.
    Thanks,
    Renjith.

  • Catching browser event

    Hi guys
    Does anybody knows how to catch a browser event??
    I have a webdynpro application written with Java. I just wonder on how to catch browser event issued from Internet Explorer (when user press BACK, REFRESH, CLOSE broser) in my Web Dynpro application.
    Any help will be appreciated
    Thanks a lot guys

    Hi Thomas,
    Hi Ralph,
    I appreciate the idea of WD is platform independence.
    However the argument that WD can not react to an event on
    a platform without interferring with platform independence
    doesn’t make sense to me.
    Since each platform has its own rendering engine.. WD client , browser,
    Muse whatever... why cant events in the Framework be defined that
    are only triggered by 1 or 2 of the clients.
    We are happy to builld client specific rendering, but not client
    specific events.  Why not... rendering is outbound, events inbound.
    The fact that other clients cant  trigger the event via the specific
    rendering tool, doesn’t mean it isnt valid to cater for it.
    A platform independent WD is still possible. We simply have an event
    that a developer can cater for if it is seen as beneficial.
    WHAT THE DEVELOPER SHOULD NOT DO, is code in a way that
    this event is seen as required or
    mandatory to use in the WDC.  This would be poor WD code design.
    Just as a developer can completely abuse MVC and stick selects in view controllers he could design an app around an EVENT that cant be triggered
    in all circumstances.  But why is it wrong to have say a BACK button on the
    screen and also have the Browser back mapped to the feature ?
    No lost functionality just extra support on the most common platform.
    That is interface events at their best.
    The ability to have code behind major external events, is still a very
    legitimate requirement in my opinion.
    Please continue the debate.
    Cheers
    Phil

  • How to catch clicking a radiobutton action?

    Hello!
    I want to disable some components within a screen after I click a radiobutton, but I don't know how to catch the clicking radiobutton action (or event?). Could anyboby give me some ideas? Thanks in advance!
    kt

    Have you tried adding ItemListener? this should work....
    <CODE>
    jpanel extends JPanel implements ItemListener
    private JRadioButton;
    public jpaenl()
    rad = new JRadioButton("myradiobtn");
    add( rad )
    rad.addItemListener( this );
    public void itemStateChanged( ItemEvent e )
    if( e.getItemSelectable() == rad )
    //todo code here

  • Capturing browser close event

    Hello everyone,
    Even though this question has been answered before, I find that none of the answers seem to work for me.
    My problem is the following: Locks are placed on records and tables at certain points in my application. But if the user simply closes the browser without closing the application properly, all the locks are still in place. So I need to catch an event that allows me to ABAP my way out of this.
    I have the following BSP page which loads my application:
    function startBSPApplication()
    function endBSPApplication()
      <frameset id="<%=guid %>_FRAMESET" rows="*,0" onload="startBSPApplication('<%=guid %>_A');" onunload="exitBSPApplication();" noresize framespacing="0" frameborder="0" border="0">
        <frame name="<%=guid %>_A" src="session_default_frame.htm">
        <noframes>This browser does not support frames.</noframes>
      </frameset>
    The start and end functions simply start and end a session, and I find myself unable to actually call an ABAP function in there. All ABAP code placed inside the javascript functions is called everytime the page is loaded, not everytime the function is called and that's not what I want.
    I also already tried the <bsp:htmlbEvent> tag, but I couldn't get that to work either. I tried it like this:
    Notice however that I wrote this on top of the frameset. Does this mean that the onunload event will be called twice and does this cause a problem?
    I tried to call the onDestroy event from within my endBSP function, but nothing happened either.
    <htmlb:content design="design2003" >
      <htmlb:page title="Capture browser close " >
        <htmlb:form>
          <bsp:htmlbEvent id      = "myid"
                          onClick = "onDestroy"
                          name    = "onDestroy"/>
          <script for="window" event="onunload"  type="text/javascript">
               alert('Starting the Server Event');
               onDestroy();
           </script>
        </htmlb:form>
      </htmlb:page>
    </htmlb:content>
    Does anybody have another suggestion, or notice me overlooking something?
    Thank you in advance,
    Niels.

    Hi Eddy,
    I can't find anything really helpful in that blog. Except maybe adding the onbeforeunload attribute to my frameset and calling a JS function to back it up.
    The problem still persists that any ABAP you put in a JS function is executed regardless of wether or not the function is actually called.
    I need to get to my DO_HANDLE_EVENT somehow when the user closes the window.

  • Call Webservice/API during browser close event

    Hello,
    I am using JDEV 11g. My application catches the browser close event to call a return Task Flow.
    I am wondering if its possible to call a webservice/API during the same event.
    Thanks
    Padmapriya

    Probababy too late to ask .. did u manage to get this resolved.
    I am not able to call any server Listeners during browser close event ...
    Details here -Re: Calling an ActionListener on browser window close using JS event queuing

  • How to handle form close event or escape key press event for user defined f

    Experts,
    Please let me know how to handle form close event or escape key press event for user defined form...
    Thanks & Regards,
    Pravin.

    Hi
    You can catch the form close event like this
    If ((pVal.FormType = 139 And (pVal.EventType = SAPbouiCOM.BoEventTypes.et_FORM_CLOSE)) And (pVal.Before_Action = True)) Then
          Try
                   SBO_Application.SetStatusBarMessage(pVal.EventType.ToString())
          Catch ex As Exception
                    SBO_Application.SetStatusBarMessage(ex.Message)
            End Try
          End If
    Hope this helps
    Regards
    Arun

  • How to catch window event on jApplet

    Could you please let me know, How to catch �activate window� event on Japplet page. I am using the following class.
    public class CtApplet
          extends JApplet
          implements Runnable, ErrorHandlerI could implement the same on Jframe by using the following Api�s. I assume they don�t exist on Japplet.
    this.addWindowListener (��.);
    class ��
          extends java.awt.event.WindowAdapter
        public void windowActivated (WindowEvent e)
            ��..
    }Edited by: samtek on Oct 30, 2007 7:59 PM
    I extened my japplet class from WindowListener, and added function, windowActivated(), But not able to catch the event.

    Hi,
    I would try AWTEventListener; it should work with a JFrame.
    Now I probably could have done this better but I made 2 classes for this.
    HyperFrame to run the applet as an Application and have the Frame handle
    the AWT events, and AWTEventManager to process the Events when running as an Applet. In the future I will probably merge into 1 AWTEventManager.
    https://hyperview.dev.java.net/source/browse/hyperview/www/HyperView299/AWTEventManager.java?rev=1.3&view=markup
    https://hyperview.dev.java.net/source/browse/hyperview/www/HyperView299/HyperFrame.java?rev=1.11&view=markup
    Anyway, omit the View/List specific code and look at the setup; it should work for you. BTW Not ATM multi instance friendly but on my todo list several hundred down.
    You will need to tweak the Thread control as well; probably AWTEventManager is the class to study as it really shows all you need to implement an AWTEventListener
    Good Luck!
    (T)

  • How to catch click event on BAR or a BAR GRAPH???

    Hello
    I want to implemnt following things,
    1. there is Bar Graph containing 10 Bars.
    2. So i want to navigate to 10 diff. pages on click of each bar.
    So how to catch click event on BAR or a BAR GRAPH.????

    Hi,
    You can set Destination URI on a graph. The URL can be specifically associated to a particular data point plotted in the graph.
    Detail for the same is provided in OAF developer guide under 'Charts and Graphs' topic.
    --Sushant                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • How to track browser closing event?

    Hi Everyone,
    I ran into a problem, which I thought at first would be a very easy thing to solve. Unfortunately, I spent few hours already reading through the forums posts and could not find the answer. Some say it is impossible to implement. I think there has got to be a solution to this problem.
    I need to track user's login time into the JSP application and record both login and logoff timestamps. I had no problem with the login. Just instantiated my TimeTracker object on the index.jsp page and it writes a new row into the database every time user hits this page. However, things are different with the logoff. User can exit out in three dirrent ways. One is to click the "Exit" button, second is when session expires and the third is when "X" button of the browser is clicked and browser shuts down. I can control first two scenarious. I don't know what to do about the user closing the browser.
    I tried capturing onCLose, onUnload or onBeforeUnload events but all of them are also invoked when window gets instantiated or when user clicks on a different page within the application. I also tried instantiating an applet within my JSP template and invalidate session inside its destroy() method but the problem here is that the applet gets destroyed every time a different page within the application is accessed.
    I am ready to give up and just leave it as it is now, let the session expire on its own and take care of the logoff time.
    Did anybody have similar problem and found the resolution?
    Any help would be greatly appreciated.
    Thanks,
    YM

    The common answer is that there is no good way to track the browser closing. A page can't tell the difference between the browser closing and simply navigating to a different page, so determining when the broswer is actually closed is a tough task. There have been some complex solutions in the past, but none seemed to be guaranteed to work, and as such, are pretty much useless for most applications.

  • Browser close button / unload event

    Hi,
    In Ie8 session is carrying when i close the browser using X button. Is there any way to capture this browser close button or any portal unload event.
    Thanks
    Manu

    There is no clean way to do this. The only way i know of is to have a private global javascript variable true/false (true = show the popup, false = show popup) where the default value is true. On every click of link / form submit where you need the popup to be suppressed , set the value as false. (you can do this using a js library which can attach events to onsubmit, onclick of all links)
    However the behavior you are proposing is really , really annoying (as a user), consider your interface before implementing something like this. Valid usecases are prompting the user to save changes before leaving the page, not you are leaving the website (Thats why i typed something or closed the browser)

  • Browser Close Event

    Hi,
    I want to track Browser close event in EP to close all the sessions of the user.
    Plz guide me with detailed steps.
    Thanks in advance.
    Regards,
    Priya

    Hi search for "Browser close event" in google.
    Result: there is no such thing. You can do something with onbeforeunload but that might not work for all browser.
    Kai

  • How does a servlet close the browser window?

    How can a servlet close the browser window it is running in?

    I'm running the servlet by calling it in a browser window, passing parameters using POST, with the parameters appearing at the end of the url.
    Is there another way to run the servlet, without it affecting the browser window? That would be a better solution.

Maybe you are looking for