We help IT Professionals succeed at work.

Check out our new AWS podcast with Certified Expert, Phil Phillips! Listen to "How to Execute a Seamless AWS Migration" on EE or on your favorite podcast platform. Listen Now


javascript or JS calander

Medium Priority
Last Modified: 2010-08-05
I have looked for mouse over JS calander, not the new window pop up calendar.
When the user mouse over the link or button, the calendar is showed up and it can be selected month day and year. Pretty straght forward question.

Thank you
Watch Question

Unlock this solution and get a sample of our free trial.
(No credit card required)

This is best of breed that I have seen:  http://dynarch.com/mishoo/calendar/

Its is easy to convert a pop up calendar into a mouse over calendar using a hidden DIV element and loading the calendar in that DIV.  Only problem is that you'll have to do some extra coding for positioning but again you can always have a reusable function that does that.  I am ready to help you write such code if you give me more details


Where can I download js file. Plus when it does not offer mouseout function.

iloya: You can want to check mark-b web links

You can download the calendar I mentioned at: http://prdownloads.sourceforge.net/jscalendar/jscalendar-0.9.6.zip?download

As far as mouseOut and mouseOver goes- here's one way you can do it with this calendar:

1)  For the mouseover, when you call the Calendar.setup constructior, add the value pair:
              eventName     : "mouseover"

For example: In the test-position.html (root directory the distribution) change:

              inputField    : "cal-field-1",
              button         : "cal-button-1",
              align           : "Tr"


              inputField    : "cal-field-1",
              button         : "cal-button-1",
              align           : "Tr",
              eventName  : "mouseover"

This will make the mouseover on the '...' button pop up the calendar.

2) For the mouseout, you will have to modify the calendar.js file:

 a) Add a js function in this file (calendar.js):

    Calendar.calMouseOut = function(ev) {
      var el = Calendar.getTargetElement(ev);
      if ( el && el.id == 'someId' ) {

 b) Find the function in the calendar.js file that has this signature:
       Calendar.prototype.create = function (_par) :
     There is a block of code in this function that looks like this:

     if (this.isPopup) {
        div.style.position = "absolute";
        div.style.display = "none";

     we need to add two lines in this block to fire the mouseout event:

     if (this.isPopup) {
        div.style.position = "absolute";
        div.style.display = "none";
->    div.id='someId';
->    calendar.addEvent(div, "mouseout", Calendar.calMouseOut);

That's it.  Now the calendar will pop up when the mouse is over the button and it will disappear when the mouse is moved out of the calendar.

Did this work for you or is there a problem?
ZvonkoSystems architect
Top Expert 2006

riskyricky1972  Last 10 Grades Given: C C C C C C C C C C
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.


Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.