| OLD | NEW | 
| (Empty) |  | 
 |   1 /*! @source https://github.com/jonathantneal/closest/blob/master/element-closest
    .js */ | 
 |   2  | 
 |   3 (function (ElementProto) { | 
 |   4         if (typeof ElementProto.matches !== 'function') { | 
 |   5                 ElementProto.matches = ElementProto.msMatchesSelector || Element
    Proto.mozMatchesSelector || ElementProto.webkitMatchesSelector || function match
    es(selector) { | 
 |   6                         var element = this; | 
 |   7                         var elements = (element.document || element.ownerDocumen
    t).querySelectorAll(selector); | 
 |   8                         var index = 0; | 
 |   9  | 
 |  10                         while (elements[index] && elements[index] !== element) { | 
 |  11                                 ++index; | 
 |  12                         } | 
 |  13  | 
 |  14                         return Boolean(elements[index]); | 
 |  15                 }; | 
 |  16         } | 
 |  17  | 
 |  18         if (typeof ElementProto.closest !== 'function') { | 
 |  19                 ElementProto.closest = function closest(selector) { | 
 |  20                         var element = this; | 
 |  21  | 
 |  22                         while (element && element.nodeType === 1) { | 
 |  23                                 if (element.matches(selector)) { | 
 |  24                                         return element; | 
 |  25                                 } | 
 |  26  | 
 |  27                                 element = element.parentNode; | 
 |  28                         } | 
 |  29  | 
 |  30                         return null; | 
 |  31                 }; | 
 |  32         } | 
 |  33 })(window.Element.prototype); | 
| OLD | NEW |