[jQuery] datePicker plugin - show on input click

[jQuery] datePicker plugin - show on input click

At the moment, the date picker plugin
(http://kelvinluck.com/assets/jquery/datePicker/) uses an anchor added
after the input to show the calendar. What I wanted to do is show it
when I clicked on the input instead.
Also I think it is good practice to add events after adding an element
to the DOM (adding before can cause memory leaks in IE IIRC), so I
have made another tweak to do that.
The fix is as follows (applied to the uncompressed version):
jQuery.fn.datePicker = function(a)
{
    this.each(function() {
        if(this.nodeName.toLowerCase() != 'input') return;
        jQuery.datePicker.setDateWindow(this, a);
        if (!jQuery.datePicker.isInited(this)) {
            var chooseDate = jQuery.datePicker.getChooseDateStr();
            var calBut;
            if(a && a.inputClick){
                calBut = jQuery(this).attr({'class':'date-picker', 'title':chooseDate})
            }
            else {
                calBut = jQuery("<a>").attr({'href':'javascript:;',
'class':'date-picker', 'title':chooseDate})
                .append("<span>" + chooseDate + "</span>");
            }
            jQuery(this).wrap(
                '<div class="date-picker-holder"></div>'
            ).before(
                jQuery("<div>").attr({'class':'popup-calendar'})
            ).after(
                calBut
            );
            calBut.click(jQuery.datePicker.show);
            jQuery.datePicker.setInited(this);
        }
    });
    
};
To use:
$('input#date1').datePicker({inputClick: true});
i.e. add 'inputClick: true' as an option to show the picker when you
click on the input box containing the date.
_______________________________________________
jQuery mailing list
discuss@jquery.com
http://jquery.com/discuss/