473,396 Members | 2,010 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

Mouse position in FireFox / NS

I got this working in all browsers but FF/NS. It's not picking up the
event to find the mouse position.

In a perfect world, you mouse over the link and a mouse bubble pops up.

Thanks for help.
scot

Aug 8 '05 #1
6 30017
"scot_nery" <sc**@juggle.com> wrote in message
news:11**********************@g49g2000cwa.googlegr oups.com...
Crap... http://dev.juggle.com/bubbletest.html
there.


If you copy this one, make sure you put the mouse bubble a bit away from the
mouse location, other wise dragging the mouse from left to right over the
link makes the bubble flash. (Try it). Probably because as you drag the
mouse right it is no longer over the link, but over the mouse bubble
instead, and thus onmouseout is called and the bubble dissapears.

Ross
Aug 8 '05 #3

scot_nery <sc**@juggle.com> wrote in message news:11**********************@g44g2000cwa.googlegr oups.com...
I got this working in all browsers but FF/NS. It's not picking up the
event to find the mouse position.


// It's best to monitor mouse co-ordinates with a dedicated handler:

var mouseX, mouseY;

function getMousePos(e)
{
if (!e)
var e = window.event||window.Event;

if('undefined'!=typeof e.pageX)
{
mouseX = e.pageX;
mouseY = e.pageY;
}
else
{
mouseX = e.clientX + document.body.scrollLeft;
mouseY = e.clientY + document.body.scrollTop;
}

}

// You need to tell Mozilla to start listening:

if(window.Event && document.captureEvents)
document.captureEvents(Event.MOUSEMOVE);

// Then assign the mouse handler

document.onmousemove = getMousePos;

// Then your mouseover function can just read mouseX and mouseY directly.

--
Stephen Chalmers http://makeashorterlink.com/?H3E82245A

Aug 8 '05 #4
It's a success story. Thanks tons for the help. Can't we all just get
along, my fellow browsers?

http://dev.juggle.com/bubbletest.html

Aug 9 '05 #5
Stephen Chalmers wrote :
scot_nery <sc**@juggle.com> wrote in message news:11**********************@g44g2000cwa.googlegr oups.com...
I got this working in all browsers but FF/NS. It's not picking up the
event to find the mouse position.
// It's best to monitor mouse co-ordinates with a dedicated handler:

var mouseX, mouseY;

function getMousePos(e)
{
if (!e)
var e = window.event||window.Event;


This manner of coding is not recommendable, IMO. In javascript strict
mode (reporting warnings), Firefox will report that "variable e hides
argument". This manner of coding just makes debugging more difficult.

I recommend
var TheEventObject;
if(e)
{
TheEventObject = e;
}
else if(window.event)
{
TheEventObject = window.event;
}
else
{
TheEventObject = null;
};
if('undefined'!=typeof e.pageX)
{
mouseX = e.pageX;
mouseY = e.pageY;
}
else
{
mouseX = e.clientX + document.body.scrollLeft;
This will work in MSIE 5 but what if the document triggers standards
compliant mode in MSIE 6? In such case, the provided code will not
succeed as the root element is not the same.
As written, the code [indirectly] is not promoting web standards. As
written, the code is more backward-compatible than forward-compatible.
mouseY = e.clientY + document.body.scrollTop;
}

}

// You need to tell Mozilla to start listening:

if(window.Event && document.captureEvents)
document.captureEvents(Event.MOUSEMOVE);


Why not register the listener to the object with DOM 2 Events method?
It's forward-compatible. Future-proof.

Gérard
--
remove blah to email me
Aug 12 '05 #6
Gérard Talbot <ne***********@gtalbot.org> wrote in message news:3m*************@uni-berlin.de...
Stephen Chalmers wrote :
scot_nery <sc**@juggle.com> wrote in message news:11**********************@g44g2000cwa.googlegr oups.com...

var mouseX, mouseY;

function getMousePos(e)
{
if (!e)
var e = window.event||window.Event;


This manner of coding is not recommendable, IMO. In javascript strict
mode (reporting warnings), Firefox will report that "variable e hides
argument". This manner of coding just makes debugging more difficult.


That level of warning is intended to advise of possible pitfalls, not errors. I know that if I choose conditionally to
overwrite a passed parameter, then I must be aware that any initial value may be lost.
if('undefined'!=typeof e.pageX)
{
mouseX = e.pageX;
mouseY = e.pageY;
}
else
{
mouseX = e.clientX + document.body.scrollLeft;


This will work in MSIE 5 but what if the document triggers standards
compliant mode in MSIE 6?


That can happen only if the programmer brings it about, in which case he will know what to expect and amend the code
accordingly. I didn't want to clutter my demonstration with the cascade of questions that must be asked to cover that
contingency.

// You need to tell Mozilla to start listening:

if(window.Event && document.captureEvents)
document.captureEvents(Event.MOUSEMOVE);


Why not register the listener to the object with DOM 2 Events method?
It's forward-compatible. Future-proof.


Here I must bow to your clairvoyancy, however I don't seem to know the syntax for making it past-proof, which remains a
concern. On the planet where all users upgrade at the first opportunity, your advice may be of some value, but not where
I reside.

--
Stephen Chalmers
547265617375726520627572696564206174204F2E532E2072 65663A205451323437393134

Aug 13 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Smiley | last post by:
I want one end of a line to follow the mouse?
4
by: Jay | last post by:
Hi, How can I capture mouse position on Image? I found number of script capturing mouse position of the page. But I could not find anything based on image. What I want to find out is X Y...
19
by: wmanzo | last post by:
I have a really professional conspiracy movie site and I use tons of layers and an external scroll bar assembly. I would like to put the various sections into MS Iframes and in order to clean up...
1
by: Sim | last post by:
Hello NG, I try to use drag and drop function between two list views. For this I found following code: ...
4
by: vunet.us | last post by:
I have a DIV element. How can I find mouse position (top and left) inside of this DIV? <div onMouseMove="getPositions();" style="width:200px;height:100px"></div> function getPositions(ev){...
1
by: Terry | last post by:
Hi again folks, After getting my page (http://theamazing.onlinewebshop.net/spotlight/) to work in Firefox and Safari. I thought I would try to get in working in IE. My attempt is here:...
1
by: ranpelt | last post by:
Hi folks, After getting my page (http://theamazing.onlinewebshop.net/spotlight/) to work in Firefox and Safari. I thought I would try to get in working in IE. My attempt is here:...
10
by: Glich | last post by:
hi, how can I, control mouse position and clicking from python? I want to interact with a flash application inside firefox. thanks. ps: I am not using windows.
5
by: Zaxxon21 | last post by:
I'm basically trying to implement a simple drop down menu list for a button that I have. When the user hovers over the button, I want a list of button options to appear below the button. If the...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.