【问题标题】:getElementById doesn't get the correct element?getElementById 没有得到正确的元素?
【发布时间】:2020-05-25 22:39:06
【问题描述】:

我需要使用 getElementById 获取一个 dom 节点来对其进行动画处理。该元素与其他具有相似属性的同级元素位于一个 div 中。但是,getElementById 获取的元素与指定的不同?

const target = document.getElementById(notification._id);
console.log(notification._id);
console.log(target);
//animations
anime({
    targets: target,
    opacity: [1,0],
    duration: 500,
});

我终其一生都无法弄清楚为什么要获得具有不同 ID 的兄弟元素?

【问题讨论】:

    标签: javascript dom anime.js


    【解决方案1】:

    看起来您的元素 ID 是自动生成的。由于您使用它来选择正在动画的元素,因此元素是否有可能在您的选择过程中更改 ID(通过动画到下一帧)?

    【讨论】:

    • 也这么想。也许某些过程正在增加元素上的 id,无论是想要的还是不需要的。所以它选择了正确的,但是当我们注销目标时,元素 id 已经添加了 1。 document.getElementById 是可靠的,我强烈怀疑它会出错并返回错误的元素。
    • 我不认为id有任何改变,错误动画后的最终结果id仍然与数据库中的相同。
    猜你喜欢
    • 2021-09-29
    • 2013-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-25
    • 2019-03-01
    • 2019-12-13
    相关资源
    最近更新 更多