Toggles do not work always
In following cases toggles don't work:
<a id="toggle">Some text <img src="someimage.png"/></a>
there is no event.preventDefault, when clicking on the img, so the page is reloaded
<div id="toggle">Some text <img src="someimage.png"/></div>
In this case, the calendar cannot be closed not at all.
The problematic code is on both cases picker.atach.js:
in first case event.stop(); is not executed:, because tag = img
var getOpenEvent = function(element){ return function(event){ var tag = event.target.get('tag'); if (tag == 'input' && event.type == 'click' && !element.match(':focus') || (self.opened && self.input == element)) return; if (tag == 'a') event.stop(); self.position(element); self.open(); self.fireEvent('attached', [event, element]); }; };
in second case the close function has no effect, because here isA is always false
var closeEvent = function(event){ var stopInput = self.options.blockKeydown && event.type == 'keydown' && !(['tab', 'esc'].contains(event.key)), isCloseKey = event.type == 'keydown' && (['tab', 'esc'].contains(event.key)), isA = event.target.get('tag') == 'a';
if (stopInput || isA) event.preventDefault();
if (isCloseKey || isA) self.close();
};