Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Event `target` not reflected correctly for `defaultView`

未关闭
#298 6 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 17 天内回复

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
38/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
javascript, nodejs
领域
web-dev

调研方向

使用提供的 parseHTML 复现作为第一个测试用例;跟踪 window/defaultView 如何分发 Event 并分配 target。当 window 监听器观察到 e.target === window,同时 document 的行为保持正确,并且有一个覆盖这两种情况的回归测试时,即视为完成。

由索引模型根据 Issue 内容生成。

描述

Running this (in nodejs v20.18.1):

import { parseHTML } from "linkedom";
const { document, window } = parseHTML();

for (let name of ["document", "window"]) {
  window[name].addEventListener("test", (e) =>
    console.assert(e.target === window[name], `${name} preserves target`)
  );
  window[name].dispatchEvent(new window.Event("test"));
}

logs this:

Assertion failed: window preserves target

It seems that the target set for events dispatched from defaultView ends up being globalThis, not defaultView.

主要语言
HTML
星标
2.1k
派生
112
平均合并
11 天 1 小时
30 天内合并 PR
1

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

WebReflection/linkedom 的其他 Issue

查看 WebReflection/linkedom 的全部 Issue

相似的 Issue

更多 Web Dev Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。