Хотелось бы записать вот такой селектор:
document.querySelectorAll(".smallinnertable:not(:has(a))");
На jQuery работает, а на чистом JS нет. Такой селектор очень нужен. Спасибо за помощь.
Ответ
Вряд ли что-то есть прям в точности легкое и простое. Ведь даже на Jquery написан хорошенький и хитрый фильтр для селекторов.
Поэтому, как вариант, написать что-то самому. Например что-то подобное:
function getElementHasNotAnother(selector, filterEl) {
var divs = document.querySelectorAll(selector),
filter = Array.prototype.filter;
return filter.call( divs, function( node ) {
return node.querySelectorAll(filterEl).length == 0;
});
}
var result = getElementHasNotAnother('.smallinnertable', 'a');
/*********** check *************************/
for (var el in result) {
console.log(result[el].textContent);
}
Комментариев нет:
Отправить комментарий