我使用 a.forEach((项目) ...当需要定位非锚点时,是否可以包含'or class x'?



此脚本位于自定义Javascript光标上。它按预期工作,但我希望鼠标悬停在不是a的单个元素(img(上时也能做出同样的反应——这正是脚本当前的目标。

有没有一种方法可以调整脚本,从本质上寻找的目标锚点或类为.link的元素(例如(。或者我需要复制代码块并使用getElementsByClassName?也许我最好使用像data-这样的东西来瞄准元素,而不是所有的a元素?

document.addEventListener("mousedown", function () {
cursor.classList.add("cursor--click");
});
document.addEventListener("mouseup", function () {
cursor.classList.remove("cursor--click");
});
a.forEach((item) => {
item.addEventListener("mouseover", () => {
cursorTrail.classList.add("cursor-trail--hover");
});
item.addEventListener("mouseleave", () => {
cursorTrail.classList.remove("cursor-trail--hover");
});
});
a.forEach((item) => {
const interaction = item.dataset.interaction;
item.addEventListener("mouseover", () => {
cursor.classList.add(interaction);
});
item.addEventListener("mouseleave", () => {
cursor.classList.remove(interaction);
});
});

您可以使用document.querySelectorAll使用任意CSS选择器来选择元素

在你的情况下,你会做这样的事情:

let links = document.querySelectorAll('a, .link');
links.forEach((item) => {
...
});

最新更新