Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Javascript: OnMouseMove event problem

Posted on 2009-05-07
4
Medium Priority
?
525 Views
Last Modified: 2012-05-06
I have a count down javascript to count down in a webpage. This count down timer will be reset once user move the mouse, however, when a msn,yahoo messager or any chat application alert appear, it will reset the count down timer. I just want the timer will reset if the user move the mouse. Below is the html code. Can i have your help.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
    <title>Testing</title>
	    <script type="text/javascript">
            var timeActivity;
            var seconds;
            document.d.d2.value='0';
            function start()
            {
                seconds=300;
                countDown();
                
	            document.documentElement.onmousemove = function() 
	            {
	                seconds = 300;
	                countDown();
	            }
            }
 
            function countDown()
            {
                 document.d.d2.value = seconds;
                 seconds-=1;
                 clearTimeout(timeActivity);
                 timeActivity = setTimeout("countDown()",1000) 
            }
            
            
	    </script>		
</head>
 
<body>
    <form name="d">
        <p><input type="text" size="8" name="d2"/></p>
        <input type="button" value="Start" name="Start" onclick="start()" />
    </form>
</body>
 
</html>

Open in new window

0
Comment
Question by:sawyih1
  • 2
  • 2
4 Comments
 
LVL 3

Accepted Solution

by:
janjerell earned 2000 total points
ID: 24333581
Hello sawyih1,


you can try this code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
    <title>Testing</title>
            <script type="text/javascript">
            var timeActivity;
            var seconds;
	    var isWindowActive = true;
window.onblur = windowBlurred;
window.onfocus = windowFocused;
 
function windowBlurred() { isWindowActive = false; }
function windowFocused() { isWindowActive = true; }
 
            document.d.d2.value='0';
            function start()
            {
                seconds=300;
                countDown();
                
                    document.documentElement.onmousemove = function() 
                    {
			if(isWindowActive == true)
			{
				//alert(isWindowActive);
                        	seconds = 300;
                        	countDown();
			}
                    }
            }
 
            function countDown()
            {
                 document.d.d2.value = seconds;
                 seconds-=1;
                 clearTimeout(timeActivity);
                 timeActivity = setTimeout("countDown()",1000) 
            }
            
            
            </script>           
</head>
 
<body>
    <form name="d">
        <p><input type="text" size="8" name="d2"/></p>
        <input type="button" value="Start" name="Start" onclick="javascript:start();" />
    </form>
</body>
 
</html>
            
            //
 
            //document.window.onblur = function () { alert('a');  isWindowActive = false; }
 
            //document.window.onfocus = function () { alert('a'); isWindowActive = true; }
             

Open in new window

0
 

Author Comment

by:sawyih1
ID: 24333684
Hi Janjerell,thanks for the help. But it works in html page, but it doesn't work correctly when i put inside aspx page. The timer still running after i switch back from other window.Do u have any idea?
0
 

Author Comment

by:sawyih1
ID: 24333777
sorry, it works fine, is my mistake. Thanks a lot.
0
 
LVL 3

Expert Comment

by:janjerell
ID: 24334135
Thanks... Glad to help...
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

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

Aerodynamic noise is the cause of the majority of the noise produced by helicopters. The inordinate amount of noise helicopters produce is a major problem in the both a military and civilian setting. To remedy this problem the use of an aerogel coat…
The decision to migrate to the cloud is not a simple one—many factors, such a cost, ease of use, and ongoing maintenance come into play. The goal is always for cloud platforms to make storage and backups more seamless and effective. Here’s a look at…
Please read the paragraph below before following the instructions in the video — there are important caveats in the paragraph that I did not mention in the video. If your PaperPort 12 or PaperPort 14 is failing to start, or crashing, or hanging, …
In a question here at Experts Exchange (https://www.experts-exchange.com/questions/29062564/Adobe-acrobat-reader-DC.html), a member asked how to create a signature in Adobe Acrobat Reader DC (the free Reader product, not the paid, full Acrobat produ…
Suggested Courses

886 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