mirror of
https://github.com/WordPress/WordPress.git
synced 2024-11-09 20:30:43 +01:00
d0c596c992
Add missing `@since` tags for some functions. Follow-up to [49216], [49220], [49854], [51294]. See #52628, #53461. Built from https://develop.svn.wordpress.org/trunk@51304 git-svn-id: http://core.svn.wordpress.org/trunk@50913 1a063a9b-81f0-0310-95a4-ce76da25c4cd
47 lines
1.1 KiB
JavaScript
47 lines
1.1 KiB
JavaScript
/**
|
|
* File polyfills.js.
|
|
*
|
|
* Polyfills for IE11.
|
|
*/
|
|
|
|
/**
|
|
* Polyfill for Element.closest() because we need to support IE11.
|
|
*
|
|
* @since Twenty Twenty-One 1.0
|
|
*
|
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/Element/closest
|
|
*/
|
|
if ( ! Element.prototype.matches ) {
|
|
Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
|
|
}
|
|
|
|
if ( ! Element.prototype.closest ) {
|
|
Element.prototype.closest = function( s ) {
|
|
var el = this;
|
|
do {
|
|
if ( Element.prototype.matches.call( el, s ) ) {
|
|
return el;
|
|
}
|
|
el = el.parentElement || el.parentNode;
|
|
} while ( el !== null && el.nodeType === 1 );
|
|
return null;
|
|
};
|
|
}
|
|
|
|
/**
|
|
* Polyfill for NodeList.foreach() because we need to support IE11.
|
|
*
|
|
* @since Twenty Twenty-One 1.0
|
|
*
|
|
* @see https://developer.mozilla.org/en-US/docs/Web/API/NodeList/forEach
|
|
*/
|
|
if ( window.NodeList && ! NodeList.prototype.forEach ) {
|
|
NodeList.prototype.forEach = function( callback, thisArg ) {
|
|
var i;
|
|
thisArg = thisArg || window;
|
|
for ( i = 0; i < this.length; i++ ) {
|
|
callback.call( thisArg, this[i], i, this );
|
|
}
|
|
};
|
|
}
|