Old post, but may be useful for futere link.
We are approaching the same problem the other day. As for your first question: what causes the blur event on mobile Safari? → It does not work in case of a touch event (iPad / iPhone).
I dealt with this by installing an event listener on the attached div. The contradictionary to which you (at least I) might expect the event you want to listen to is 'click'. Below is a simplified situation:
<div id="enclosing-div"> <input type="date" "id="date-picker-field"> </div>
Now your js might look like this:
source share