Value of a foreign input element is an attribue
还没有人认领这个 Issue。
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 35/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 停滞
- 技术栈
- javascript
- 领域
- web-dev
调研方向
首先运行 issue 中的两个 DOMParser 复现,比较针对包含 foreignObject 的输入时 HTML 和 image/svg+xml 的解析路径。跟踪已解析输入如何暴露其 value 属性与 value attribute。完成的标准是 SVG 情况通过 my_input.value 返回初始值,与浏览器行为一致,并为该复现添加回归覆盖。
由索引模型根据 Issue 内容生成。
描述
Dear,
First of all thank for sharing this nice library!
I have an issue when using an html input element as foreign object inside an svg drawing. Not sure if there is anything wrong with this library, or just me doing something not correctly...
BTW if you are wondering why such foreign objects are used, you can here see a demo animation on my wiki to see how it can be used for example for floorplans in home automation.
Case 1: input elements (ok)
I set a default value "Initial" to an input element:
let html = '<html><head></head><body><input id="my_input" value="initial"></body></html>'
let parser = new DOMParser()
let doc = parser.parseFromString(html, 'text/html')
let my_input = doc.querySelector('#my_input')
let value = my_input.value
Both in a browser and using Linkedom the element.value contains that default value:
Case 2: input elements as foreign object in svg (nok)
I set a default value "Initial" to an input element, which is a foreign object inside an svg drawing:
let html = '<svg xmlns="http://www.w3.org/2000/svg"><foreignObject><input id="my_input" value="initial" xmlns="http://www.w3.org/1999/xhtml"></foreignObject></svg>'
let parser = new DOMParser()
let doc = parser.parseFromString(html, 'image/svg+xml')
let my_input = doc.querySelector('#my_input')
let value = my_input.value
When running this in a browser, the element.value still contains that default value (as expected):
However when running this code in Linkedom, the element.value is undefined. And instead the "initial" is stored inside an attribute with name "value":
Hopefully somebody sees what I am doing wrong.
Thanks!!
Bart
- 主要语言
- HTML
- 星标
- 2.1k
- 派生
- 108
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
WebReflection/linkedom 的其他 Issue
-
难度 3/5 1-2 天 新手友好度 68/100
WebReflection/linkedom#329 · 5 条评论 ·
-
难度 3/5 1-2 天 新手友好度 52/100
WebReflection/linkedom#327 · 1 条评论 ·
-
难度 3/5 1-2 天 新手友好度 48/100
WebReflection/linkedom#326 · 5 条评论 ·
-
难度 5/5 一周以上 新手友好度 15/100
WebReflection/linkedom#321 · 1 条评论 ·
-
难度 5/5 一周以上 新手友好度 25/100
WebReflection/linkedom#318 · 6 条评论 ·
查看 WebReflection/linkedom 的全部 Issue
相似的 Issue
-
bug good first issue
难度 2/5 1-3 小时 新手友好度 88/100
amponce/archive-movie-browser#353 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 74/100
saayam-for-all/webapp#1870 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
Imageomics/OpenCite#66 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 64/100
chr15m/twiiit.com#20 ·
-
难度 2/5 1-3 小时 新手友好度 68/100