I'm very new to cross-browser web development. Not quiet understand this:
(function(doc) {
var matches;
matches = doc.matchesSelector ||
doc.webkitMatchesSelector ||
doc.mozMatchesSelector ||
doc.oMatchesSelector ||
doc.msMatchesSelector;
})(document.documentElement);
window.addEventListener('click', function(e) {
if ( matches.call(e.target, 'ul a') ) {
alert('Event delegation and matchesSelector are BFFs');
e.preventDefault();}
},false);
So what does document.documentElement.matchesSelector
return? What's the meaning of matches=doc.matchesSelector
if every vendor prefixes are included after?