Firefoxに何の関係が・・・?
スレチどころか板違いだと思うけどなあ

カレンダーを表示する時に フォーム.setAttribute('calendar', 'true')
カレンダー非表示にした時に フォーム.removeAttribute('calendar')
onChangeの処理に if(!フォーム.hasAttribute('calendar')) やりたい処理