问题标签 [textnode]
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.
dom - 检索 DOM 文本节点位置
是否可以检索文本节点的几何位置(即从父元素、页面等的顶部/左侧偏移量)?
jquery - 使用 jQuery 在表格中查找文本
我有一个表,其中包含这样的行:
我想创建一个包含所有文本元素的 jQuery 包装集,然后我可以将它们发送到函数,如果它们不适合它们的单元格,它将截断它们。
我不知道如何获得包装好的套装。
正在尝试这个,但它不起作用:
jquery - 使用 jQuery 查找带有文本的元素
我想在包含文本字符串的 div 中创建一个包含所有 html 元素的数组,例如
我不想获取字符串,我希望数组项成为元素(在示例中,将是 p 节点)。我事先不知道字符串是什么,所以我无法查找要匹配的字符串值。我也不希望空文本节点最终出现在数组中。
谢谢!
javascript - 文本节点是否有等效于 getBoundingClientRect() 的方法?
有没有办法获得文本节点的边界矩形?
getBoundingClientRect() 方法仅在元素上定义,并且父元素大于实际的文本节点。
jquery - jQuery:用一些元素查找和包装文本节点
我的 HTML 代码:
我想在正文中找到任何“firebrand”并将其替换为<span class="firebrand">firebrand</span>
jQuery
javascript - jQuery:将 mouseup 事件附加到容器的所有文本节点
我想在容器的所有节点上附加一个“mouseup”事件,包括使用 jQuery 的文本节点。我怎么做?
更新:
如果我有一些这样的 HTML 片段:
目前,$("p *") 将事件分别应用于<p>
而<strong>
不是应用于其中的 2 个文本节点<p>
。修改源以添加类不是一种选择。
javascript - 如何在不删除所有文本节点的情况下删除 div 中的单个文本节点?
如何删除单个动态创建的文本节点?
我正在动态生成输入,并使用 .createTextNode 在元素之前放置描述性文本。我需要能够删除正在创建并使用 .removeChild 来执行此操作的特定元素。这对于删除单个输入很好,因为我有一些东西可以参考(id/name)。有没有办法为每个文本节点设置某种引用,以便我可以将其连同相应的输入控件一起删除?
javascript - JavaScript XML 文本节点是否有 4096 个字符的限制?
为什么我总是只获得有效 XML 文本节点的前 4096 个字符?(使用 JavaScript ...)文本节点是否有限?
events - 当 mousedown 和 mouseup 事件不等于单击时
一段时间以来,我一直在使用一些按钮,这些按钮在使用相对位置和 :active 伪类中的 top: 1px 进行单击时会产生压抑的效果。
我遇到了点击事件没有触发的问题,结果证明是由于 mousedown 和 mouseup 事件没有在同一个元素上触发。我做了一些摆弄,以确保最里面的元素覆盖了整个按钮,并发现问题仍然存在。
如果我单击文本顶部的右侧,则链接会向下跳(触发 mousedown 事件)然后返回(触发 mouseup 事件),但不会发生单击。如果我在文本中间很好地单击或远离文本,一切都很好。
我在这里唯一能想到的是 mousedown 事件正在 textNode 上触发,而 mouseup 正在锚元素上触发,因为 textNode 不再位于光标下。捕捉事件对象并使用萤火虫查看目标表明情况并非如此,但我真的想不出另一种解释。阅读了一下,我可以找到一些提到在 Safari 中的 textNodes 上触发的事件,但没有关于这种不匹配的内容。
以下代码段应该允许您复制问题。请记住,您必须单击文本顶部的右侧,或上方一两个像素,并且此问题仅发生在一行像素中:
乱用 CSS,不使用 inline-block,增加行高而不是填充等似乎在这里没有效果。我尝试了很多组合。我的大部分测试都是在 Firefox 中完成的,以允许我绑定到事件并通过 firebug 记录正在发生的事情,但我在其他浏览器中也遇到了这个问题。
除了失去主动跳跃之外,有没有人可以提供任何灵感?如果可以的话,我真的很想保持这种效果。
非常感谢,
Dom(没有双关语)
jquery - Dom 节点操作,如何删除包装我的选择的标签?
我试着向你解释我的“问题”。我想知道当我选择部分文本时,该文本是否被 html 标签“包装”,并在函数中删除它们。
例如这句话:
车是<strong>
绿色</strong>
的,船是黑色的
如果我选择“绿色”并单击一个按钮,我想验证绿色是否被包裹<strong>
(因为它没关系),并且在函数中删除<strong>
标签而不删除包含“绿色”的标签。
我已经尝试过这样做,但是当我删除子节点并重新创建一个子节点时,我的新节点是空的,如果我尝试直接将文本放入document.createTextNode
,我的新节点会出现,但<strong>
标签会保留。
我不是 DOM 操作专家。你能帮我解决这个问题吗?
非常感谢您的宝贵帮助。