•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the JavaScript / DHTML / AJAX section within the Web Development category of DaniWeb, a massive community of 330,112 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 4,113 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our JavaScript / DHTML / AJAX advertiser: Lunarpages Web Hosting
Views: 29059 | Replies: 9
![]() |
They are properties of the Event Object. From the www.w3.org:
So "event.clientX' should work, depending on how you are getting the "Event" object.
// Introduced in DOM Level 2:
interface MouseEvent : UIEvent {
readonly attribute long screenX;
readonly attribute long screenY;
readonly attribute long clientX;
readonly attribute long clientY;
readonly attribute boolean ctrlKey;
readonly attribute boolean shiftKey;
readonly attribute boolean altKey;
readonly attribute boolean metaKey;
readonly attribute unsigned short button;
readonly attribute EventTarget relatedTarget;
void initMouseEvent(in DOMString typeArg,
in boolean canBubbleArg,
in boolean cancelableArg,
in views::AbstractView viewArg,
in long detailArg,
in long screenXArg,
in long screenYArg,
in long clientXArg,
in long clientYArg,
in boolean ctrlKeyArg,
in boolean altKeyArg,
in boolean shiftKeyArg,
in boolean metaKeyArg,
in unsigned short buttonArg,
in EventTarget relatedTargetArg);
};So "event.clientX' should work, depending on how you are getting the "Event" object.
•
•
Join Date: Jan 2006
Posts: 2
Reputation:
Rep Power: 0
Solved Threads: 0
Thanks for the reply Greer...
But, my requirement is to show a pop-up if on close of the browser window. The below sample script is working well in IE but not in FireFox.
Could you please let me know the solution for Firefox .....
Regards,
Ramesh
But, my requirement is to show a pop-up if on close of the browser window. The below sample script is working well in IE but not in FireFox.
Could you please let me know the solution for Firefox .....
<html><head><title>Test</title>
<script language ="Javascript">
function unLoadFnc(event)
{
if(window.event.clientX<-2000 && window.event.clientY<-2000)
{
alert("Closing the window .. ");
}
else
{
alert("Something else..");
}
}
</script>
</head>
<body onUnload="unLoadFnc(event)">
Sample Html.
</body>
</html> Regards,
Ramesh
Last edited by tgreer : Jan 19th, 2006 at 9:08 am. Reason: Added code tags
There is quite a bit wrong in your code. First, you absolutely don't need to measure any mouse position or x,y coordinates do what you've asked.
This will work to create an alert when the user closes the window:
There's no need for events, clientX, any of that. Perhaps though, you're not showing me the entire script or explaining the entire project. So, in the case that you DO need the event, you need to test if it's part of the window object (IE) or not.
Here's how I would code it:
I hope you're noting a few things, such as the fact that your page needs a doctype declaration, the proper way to write a script tag, and the semicolon after your event handler assignment.
The goal is to pass in the event object, and in your function, create a variable to hold it, using the tertiary operator.
Note, in FireFox, if you ran this code, the alert would say "undefined". That's because the widget that closes the window (the 'X') isn't within the client, so clientX would be undefined.
You'd actually have to click something in the client area to get a value.
For example, a button:
This will work to create an alert when the user closes the window:
<!-- note: you're missing a doctype here! -->
<html>
<head>
<title>Test</title>
<script type="text/javascript">
function unLoadFnc()
{
alert("Closing the window .. ");
}
</script>
</head>
<body onUnload="unLoadFnc();">
Sample Html.
</body>
</html> There's no need for events, clientX, any of that. Perhaps though, you're not showing me the entire script or explaining the entire project. So, in the case that you DO need the event, you need to test if it's part of the window object (IE) or not.
Here's how I would code it:
<!-- doctype excluded, you need to pick one -->
<html>
<head>
<title>Test</title>
<script type="text/javascript">
function unLoadFnc(evt)
{
var e = (window.event) ? window.event : evt;
alert(e.clientX);
}
</script>
</head>
<body onUnload="unLoadFnc(event);">
Sample Html.
</body>
</html>I hope you're noting a few things, such as the fact that your page needs a doctype declaration, the proper way to write a script tag, and the semicolon after your event handler assignment.
The goal is to pass in the event object, and in your function, create a variable to hold it, using the tertiary operator.
Note, in FireFox, if you ran this code, the alert would say "undefined". That's because the widget that closes the window (the 'X') isn't within the client, so clientX would be undefined.
You'd actually have to click something in the client area to get a value.
For example, a button:
<!-- doctype excluded, you need to pick one -->
<html>
<head>
<title>Test</title>
<script type="text/javascript">
function unLoadFnc(evt)
{
var e = (window.event) ? window.event : evt;
alert(e.clientX);
}
</script>
</head>
<body>
Sample Html.
<form>
<input type="button" onclick="unLoadFnc(event);" />
</form>
</body>
</html>•
•
Join Date: Mar 2006
Posts: 6
Reputation:
Rep Power: 0
Solved Threads: 0
the problem with this page is that the event that you have fired happens even if the page is refreshed. and he does not what that to happen. he wants to call the event only when the browser window is shut
•
•
•
•
Originally Posted by tgreer
There is quite a bit wrong in your code. First, you absolutely don't need to measure any mouse position or x,y coordinates do what you've asked.
This will work to create an alert when the user closes the window:
<!-- note: you're missing a doctype here! --> <html> <head> <title>Test</title> <script type="text/javascript"> function unLoadFnc() { alert("Closing the window .. "); } </script> </head> <body onUnload="unLoadFnc();"> Sample Html. </body> </html>
There's no need for events, clientX, any of that. Perhaps though, you're not showing me the entire script or explaining the entire project. So, in the case that you DO need the event, you need to test if it's part of the window object (IE) or not.
Here's how I would code it:
<!-- doctype excluded, you need to pick one --> <html> <head> <title>Test</title> <script type="text/javascript"> function unLoadFnc(evt) { var e = (window.event) ? window.event : evt; alert(e.clientX); } </script> </head> <body onUnload="unLoadFnc(event);"> Sample Html. </body> </html>
I hope you're noting a few things, such as the fact that your page needs a doctype declaration, the proper way to write a script tag, and the semicolon after your event handler assignment.
The goal is to pass in the event object, and in your function, create a variable to hold it, using the tertiary operator.
Note, in FireFox, if you ran this code, the alert would say "undefined". That's because the widget that closes the window (the 'X') isn't within the client, so clientX would be undefined.
You'd actually have to click something in the client area to get a value.
For example, a button:
<!-- doctype excluded, you need to pick one --> <html> <head> <title>Test</title> <script type="text/javascript"> function unLoadFnc(evt) { var e = (window.event) ? window.event : evt; alert(e.clientX); } </script> </head> <body> Sample Html. <form> <input type="button" onclick="unLoadFnc(event);" /> </form> </body> </html>
•
•
Join Date: May 2005
Location: Wellington, New Zealand
Posts: 182
Reputation:
Rep Power: 4
Solved Threads: 2
Tgreer had more than one example.. if you read his comments and code you will learn much about event handling in mozilla.
To copy and paste, try the last example. to get the x and y coordinates, look at where tgreer posted the event object properties.
cheers.
To copy and paste, try the last example. to get the x and y coordinates, look at where tgreer posted the event object properties.
cheers.
•
•
Join Date: May 2005
Location: Wellington, New Zealand
Posts: 182
Reputation:
Rep Power: 4
Solved Threads: 2
wow, this thread is old...
![]() |
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
•
•
•
•
DaniWeb Marketplace (Sponsored Links)
•
•
•
•
ajax asp beta bon browser browsers browsing developer development echo email encryption eudora europe firefox gecko home html internet internet explorer internet explorer 7 javascript leak linux memory microsoft mozilla msdn networking news office open source open-source patch penelope phishing scams security site social software sql super testing thunderbird users vista web webmail
- How to correct this javascript UNDER Mozilla Firefox? (JavaScript / DHTML / AJAX)
- Internet explorer stopped working after using mozilla firefox (Windows NT / 2000 / XP / 2003)
- mozilla firefox 0.8 (Windows NT / 2000 / XP / 2003)
Other Threads in the JavaScript / DHTML / AJAX Forum
- Previous Thread: javascript, timer event?
- Next Thread: need help to get document.getElementById to work



Linear Mode