问题标签 [dom]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
3543 浏览

javascript - 如何在 Firefox 扩展中将 HTML 字符串转换为 DOM 对象?

我正在使用 XMLHttpRequest 下载网页(标记汤 HTML),我想获取输出并将其转换为 DOM 对象,然后我可以在该对象上运行 XPATH 查询。如何从字符串转换为 DOM 对象?

似乎一般的解决方案是创建一个隐藏的 iframe 并将字符串的内容放入其中。一直在谈论更新DOMParser以支持 text/html,但从 Firefox 3.0.1 开始,NS_ERROR_NOT_IMPLEMENTED如果你尝试,你仍然会得到一个。

除了使用隐藏的 iframe 技巧之外,还有其他选择吗?如果不是,那么执行 iframe 技巧的最佳方法是什么,以便您的代码在任何当前打开的选项卡的上下文之外工作(这样关闭选项卡就不会搞砸代码等)?

是我为什么要寻找 iframe hack 以外的解决方案的一个示例,如果我必须编写所有代码才能获得强大的解决方案,那么我宁愿继续寻找其他东西。

0 投票
2 回答
1969 浏览

javascript - 如何在下拉“选项”之间向下或向上键盘?

我有一个自定义构建的基于 ajax [div] 的动态下拉列表。

我有一个 [输入] 框;onkeyup, 运行 Ajax 搜索,该搜索在divs 中返回结果并在使用innerHTML. 这些divs 都有亮点onmouseover,因此,典型的成功搜索会产生以下结构(请原谅半码):

有用。

但是,我错过了常规 HTML 元素背后的重要功能。我无法在“选项”之间向下或向上键盘。

我知道 javascript 处理键盘事件,但是;我一直没能找到一个好的向导。(当然,后续问题最终会是:我可以<ENTER>用来触发那个onclick事件吗?)

0 投票
13 回答
233580 浏览

javascript - 从下拉框中获取文本

这将获取在我的下拉菜单中选择的任何值。

但是,我无法找出下拉菜单当前显示的文本要使用的属性。我尝试了“文本”然后查看了W3Schools但没有答案,这里有人知道吗?

对于那些不确定的人,这里是下拉框的 HTML。

0 投票
11 回答
331166 浏览

python - 如何在 Python 中使用 XPath?

支持 XPath 的库有哪些?有完整的实现吗?图书馆是如何使用的?它的网站在哪里?

0 投票
4 回答
4505 浏览

firefox - Firefox 插件 - 套接字

我一直想要一种与服务器建立套接字连接并允许服务器操作页面 DOM 的方法。例如,这可以在股票报价页面中使用,因此服务器可以在新报价可用时推送它们。

我知道这是 HTTP 请求/响应协议的经典限制(功能?),但我认为这可以作为 Firefox 插件实现(跨浏览器兼容性对我的应用程序并不重要)。Java/Flash 解决方案是不可接受的,因为(据我所知)它们存在于一个盒子中并且不能与 DOM 交互。

谁能确认这是否在 Firefox 插件的能力范围内?有人已经创建了这个或类似的东西吗?

0 投票
9 回答
130480 浏览

javascript - 如何使用 JavaScript 删除 HTML 中的子节点?

有没有类似的功能document.getElementById("FirstDiv").clear()

0 投票
4 回答
388 浏览

javascript - 基于树(与基于 HTML)的 Web 框架?

任何编写客户端 JavaScript 的人都熟悉 DOM——浏览器在内存中引用的树结构,由它从服务器获取的 HTML 生成。JavaScript 可以添加、删除和修改 DOM 树上的节点以对页面进行更改。我发现使用它非常好(除了浏览器错误),并且与我的服务器端代码首先生成页面的方式非常不同。

我的问题是:哪些服务器端框架/语言从一开始就将其视为 DOM 树来构建页面 - 插入节点而不是回显字符串?如果客户端和服务器端代码都以相同的方式查看页面,我认为这将非常有帮助。您当然可以在任何 Web 服务器语言中一起破解类似的东西,但是专用于以这种方式创建页面的框架可以进行一些非常好的优化。

开源、被广泛部署并且已经存在了一段时间都是优点。

0 投票
3 回答
1291 浏览

javascript - 在 FCKeditor 的最后插入

FCKeditor 具有在当前光标位置插入 HTML 的 InsertHtml API(JavaScript API 文档)。如何在文档的最后插入?

我需要用这样的东西开始浏览器嗅探吗

或者有没有我错过的祝福方式?

编辑:当然,正如答案所暗示的那样,我可以重写整个 HTML,但我不敢相信这是“有福”的方式。这意味着浏览器应该销毁它所拥有的一切并从头开始重新解析文档。那可不好。例如,我希望这会破坏撤消堆栈。

0 投票
3 回答
2506 浏览

java - 哪个 Java DOM Wrapper 是最好的或最受欢迎的?

我过去使用过 jdom,并简要介绍了 XOM 和DOM4j. 每个似乎都提供了基本相同的东西,因为它们每个都提供了对(非常迟钝的)标准 W3C DOM API 的简化包装。

我知道 JDOM 曾在某一时刻为开发 JSR 和标准化过程付出了一些努力,但据我所知,这种努力从未付诸实施。在过去几年中,所有项目似乎都处于停滞状态,几乎没有新的发展。

对于哪个是最好的,是否有共识?还有各有什么优缺点?

0 投票
4 回答
8609 浏览

php - PHP中的DOM操作

我正在寻找在 PHP 中操作 HTML 的好方法。例如,我目前遇到的问题是处理格式错误的 HTML。

我收到的输入看起来像这样:

如您所见,HTML 缺少结束标记。我可以使用正则表达式或 XML 解析器来解决这个问题。但是,将来我可能不得不进行其他 DOM 操作。我想知道是否有任何好的 PHP 库可以处理 DOM 操作,类似于 Javascript 处理 DOM 操作的方式。