var radian = Math.atan2(mouseX - x, mouseY - y); // радианный угол
var rotate = (radian * (180 / Math.PI) * -1) + 90; // Переводим в градусы
var x = object.x + (object.width / 2);
var y = object.y + (object.height / 2);
const ancestor = 'селектор элементов, которые надо получить';
const descendant = 'селектор вложенных элементов';
Array.prototype.filter.call(
document.querySelectorAll(ancestor),
n => n.querySelector(descendant)
)
Array.from(
document.querySelectorAll(`${ancestor} ${descendant}`),
n => n.closest(ancestor)
)
[...document.querySelectorAll(descendant)].reduce(
(acc, n) => ((n = n.closest(ancestor)) && acc.push(n), acc),
[]
)
document.querySelectorAll(`${ancestor}:has(${descendant})`)
owl.on('changed.owl.carousel', function (e) {
console.log("current: ", e.item.index) // текущий слайд
console.log("total: ",e.item.count) // общее кол-во слайдов
})
<div class="tab-links">
<ul>
<li>
<a href="#tab1">Tab 1</a>
</li>
<li>
<a href="#tab2">Tab 2</a>
</li>
</ul>
</div>
<div class="tab-item-wrapper">
<div class="tab-item" id="tab1">Content 1</div>
<div class="tab-item" id="tab2">Content 2</div>
</div>
<div class="tab-links">
<ul>
<li>
<a href="#tab1">Tab 1</a>
</li>
<li>
<a href="#tab2">Tab 2</a>
</li>
</ul>
</div>
var tabContainers = $('.tab-item-wrapper .tab-item');
tabContainers.hide().filter(':first').show();
$('.tab-links a').click(function () {
tabContainers.hide();
tabContainers.filter(this.hash).fadeIn("slow");
$('.tab-links a').removeClass('selected');
$(this).addClass('selected');
return false;
}).filter(':first').click();
chmod -R 755 /home/qwerty
chown –R qwerty:users /home/qwerty