document.click = check;
function check(e)
{ 
    var obj = document.getElementById('calendar_widget');
    if (obj != 'null')
    {
        if (e.target.id != 'show_calender')
            obj.style.display='none';
    }
}
Error is in Internet Explorer: e.target.id is undefined.
IE doesn't support the target property, they use srcElement instead.
Change:
if (e.target.id != 'show_calender')
to:
if ((e.target || e.srcElement).id != 'show_calender')
You may also need to add this to the beginning of your function:
if (!e) e = window.event
Your final code would look like this:
function check(e) { 
    if (!e) e = window.event;
    var obj = document.getElementById('calendar_widget');
    if (obj != 'null') {
        if ((e.target || e.srcElement).id != 'show_calender')
                obj.style.display='none';
    }
}
Internet Explorer doesn't pass the event object to the event handler - it sets it as a property of the window object instead. Also, it uses srcElement instead of target. Try
document.click = check;
function check(e)
{ 
    var target = e ? e.target : window.event.srcElement;
    var obj = document.getElementById('calendar_widget');
    if (obj != 'null')
    {
        if (target.id != 'show_calender')
                obj.style.display='none';
    }
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With