首页 > 解决方案 > 点击后href不起作用

问题描述

我重用了另一个团队的组件,一切看起来都很好。这是一些“登录体验”,所以我们有一些图标,点击后我们可以看到链接。但是当我将鼠标悬停在链接上时,我可以看到重定向网址(“在左下角”),但是当我点击它们时,什么也没有发生。当我右键单击并按在新选项卡中打开时,它可以工作。

所以基本上我认为有些东西正在阻止 click() 事件。由于我找不到根本原因,我尝试在那里添加一些自定义点击事件,它将从 href 属性中获取“链接”并且会做

window.location.href

然后奇怪的事情发生了。我试图遍历特定类的链接,但什么也没发生。选择器有效,因为我可以看到 HTML 集合:

console.log(document.getElementsByClassName('link'));
console.log(document.getElementsByClassName('link').length);

它检索 HTMLCollection,我可以看到元素。但第二个日志返回“0”。所以我不能在这一点上操纵这个链接。

在控制台中,当我扩展 HTMLCollection 时,它有一些“i”标记,表示刚刚计算/评估了值。但是当我在 chrome 控制台中进行相同的长度检查时,它会返回正确的值。

看起来在我的代码被调用之后,DOM 被操纵和渲染了。

请问有人遇到过这样的问题吗?

谢谢,

但是当我做console.log

更新#1

stop(event) {
    if (event.target.tagName !== 'A') {
      event.preventDefault();
      event.stopPropagation();
    }

这是正在停止的事件。但我不认为这是我的情况,因为 HTML 代码与正在工作的组件完全相同。我刚刚添加了类来覆盖它

标签: javascripthtmlangular

解决方案


推荐阅读