/**
|
* @fileoverview Check element match selector
|
* @author NHN FE Development Lab <dl_javascript@nhn.com>
|
*/
|
|
'use strict';
|
|
var inArray = require('../array/inArray');
|
var toArray = require('../collection/toArray');
|
|
var elProto = Element.prototype;
|
var matchSelector = elProto.matches ||
|
elProto.webkitMatchesSelector ||
|
elProto.mozMatchesSelector ||
|
elProto.msMatchesSelector ||
|
function(selector) {
|
var doc = this.document || this.ownerDocument;
|
|
return inArray(this, toArray(doc.querySelectorAll(selector))) > -1;
|
};
|
|
/**
|
* Check element match selector
|
* @param {HTMLElement} element - element to check
|
* @param {string} selector - selector to check
|
* @returns {boolean} is selector matched to element?
|
* @memberof module:domUtil
|
*/
|
function matches(element, selector) {
|
return matchSelector.call(element, selector);
|
}
|
|
module.exports = matches;
|