问题标签 [innerhtml]

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 投票
1 回答
1624 浏览

javascript - innerHTML W3C 等价物

我正在使用几年前在 asp/vbscript(旧 asp)中制作的 cms,直到我们发布 dot net cms(应该很快),我们才坚持使用这个,但目前我正试图让它更像 w3c合规...目前我们的 cms 仅在 IE 中...在页面编辑器中

您可以从预览状态和 html 模式来回切换,并且编辑器使用 innerHTML 来交换模式,但是 innerhtml 使所有标签都处于 cap 中并使所有<LI>...</LI>标签都像这样<LI>...

没有结束标签,因为它是可选的......我可以使用正则表达式获取所有 html 标签和属性键并将它们交换为小写,但我想知道是否有人知道更简单的方法......不幸的是,我尝试添加严格模式 doctype由于编辑器的代码真的很旧,整个编辑器就崩溃了......

希望我们很快就会发布我们的新 cms,但是在我们将所有站点转移到新 cms 之前还需要一段时间,所以在那之前我会尝试改进我们的旧代码

是否有任何等效于 innerHtml 的代码可以使代码更符合 w3c 的 AKA 将结束标记保留在我的<li></li>位置,这样我就不会开始使用正则表达式解析我的 ccode 并替换?泰

0 投票
6 回答
19840 浏览

jquery - Firefox 中的 jQuery html()(使用 .innerHTML)忽略 DOM 更改

我真的很惊讶我以前没有遇到过这个问题,但似乎在元素上调用 jQueries .html() 函数会忽略 DOM 中的更改,即它返回原始源中的 HTML。IE 不这样做。jQueries .html() 只是在内部使用 innerHTML 属性。

这是注定要发生的吗?我在 Firefox 3.5.2 上。我在下面有一个示例,无论您将文本框值更改为什么,“容器”元素的 innerHTML 都只会返回 HTML 标记中定义的值。该示例不使用 jQuery 只是为了使其更简单(使用 jQuery 的结果是相同的)。

有没有人可以解决我可以在其当前状态下获取容器的 html 的方法,即包括对 DOM 的任何脚本更改?

0 投票
4 回答
2937 浏览

javascript - 使用 jQuery 在每个事件爆发时运行一次函数

我正在使用 jQuery 来监听 DOMSubtreeModified 事件,然后执行一个函数。我需要的是一种每次事件爆发只运行一次函数的方法。所以在这种情况下,事件只会在 1 秒后运行,并在 3 秒后再次运行。做这个的最好方式是什么?

jQuery

HTML


更新
setTimeout 函数只是为了模拟我的问题。我需要一个不更改 setTimeout 代码的解决方案。我遇到的问题是我得到了 DOMSubtreeModified 事件的爆发,每次爆发我只需要得到一个。

0 投票
1 回答
1053 浏览

javascript - 使用 innerHTML 加载 iframe 有什么问题吗?

我的应用程序(正在开发中)使用 Safari 4.0.3 和 JavaScript 向用户展示其前端。后端是 PHP 和 SQLite。这是在 OS X 10.5.8 下。

该应用程序将不时接收要呈现给用户的 HTML 块。每个块都是收到的电子邮件的正文,因此无法控制收到的 HTML 的质量。我所做的是使用 innerHTML 将块推入 iFrame 并让 Safari 呈现它。

为此,我这样做:

其中 myvar 包含收到的 HTML。现在,在大多数情况下,这可以按预期工作,并且 HTML 按预期呈现。例外情况似乎是块的标签如下所示:

等等超过2800个字符。效果就好像我上面的 JavaScript 语句没有被执行——我可以看到使用 Safari 的“开发”菜单中的错误控制台来查看 iFrame。如果我从 SQLite 后端数据库中提取 HTML 并将其保存为 .html 文件,那么 Safari 将毫无问题地呈现它。

任何关于为什么会发生这种情况的评论,或者关于 innerHTML 的这种使用,或者指向相同讨论的指针,将不胜感激。

0 投票
3 回答
4823 浏览

jquery - 更快地替代 jQuery 的 .html 函数?

我想知道是否有 jquery .html(variable) 函数的替代方法?它似乎很慢,并且在将 html 插入 DOM 时也会冻结。

我尝试使用innerHtml,效果很好,速度也非常快。但是由于某种原因,当我在插入的代码中有任何 jquery 或 MS ajax 时,这些脚本只能在 FF 中工作。

我正在尝试插入大约 2000 行代码。

0 投票
3 回答
1542 浏览

javascript - 为什么没有将 innerHTML 添加到 w3c 规范中?

有什么特别的原因使它不在任何规格中吗?

它似乎在所有浏览器中都受支持,(尽管我承认它在所有浏览器中都不能正常工作......因为您必须使用像innerXHTML这样的库才能让它正常工作,这要归功于 Internet Explorer。

innerHTML 是否有从即将推出的浏览器版本中消失的危险?如果不是,他们不应该只是添加它吗?

我正在标记这个社区维基,因为我知道我会因此而对我的代表进行殴打......但我只是想知道为什么......

0 投票
2 回答
2409 浏览

.net - 使用 Javascript 的 innerHTML 问题

好的,所以基本问题是在设置 div 元素的 innerHTML 时,我的字符串中的任何 html 标记都在除 Firefox 之外的所有主要浏览器中被剥离(并且不显示)。现在要注意的是,第一次加载页面时不会发生这种情况,它只会在部分回发时发生(除非它的 Firefox,否则它总是有效的)。

我正在尝试运行一个脚本(实际上是通过 ScriptManager 从后面的代码创建和添加的)以将一些 html 元素(带有事件处理程序)添加到一些已经存在的 html 元素中。我知道脚本总是在运行,即使我有问题,因为我可以核对现有元素的 html 或设置一些文本。我什至可以拥有文本和标记,但不会在文本呈现时呈现标记,除非文本在标记内。所以:

someElement.innerHTML = "Blah blah blah" -- 有效

someElement.innerHTML = " <br/><br/>Blah blah blah<br/><br/>"

Blah blah blah 显示但没有中断

someElement.innerHTML = " <p>This will disappear</p><div>So will this</div>"

所有这些文本将与标记一起消失。哦,我考虑过以“标准”方式执行此操作,即 document.createElement 等,但我遇到了完全相同的问题。

如果您需要/想知道其他任何事情,请询问。

编辑:当我说主要浏览器时,我的意思是:Safari 4.0.3、Chrome 3.0.195.27 和 IE 8.0.6

完整的 javascript(与此功能相关)。如果有格式错误是因为这实际上是 C# 中的一个字符串,所以为了清楚起见,我试图删除一堆时髦的转义废话。

周围的 html,请记住它是从 youtube 提要中提取的,然后由 .net 转发器控件生成:

0 投票
4 回答
9439 浏览

javascript - 将内容插入到 innerHTML 中而不清除里面已经存在的内容

我正在尝试创建一个将最新帖子插入 div 的帖子按钮,而不清除里面的所有内容。我当前的代码插入了新的分隔符,但清除了其中的所有内容,所以我只得到了最后一篇文章。

有谁知道如何修理它?

谢谢

代码是:

0 投票
3 回答
6921 浏览

c# - 使用内部 html c# 创建自定义控件

我如何创建一个接受内部 html 的自定义控件,如通常的 .net 数据网格或 ajax 选项卡式控件......像这样:

我知道如何在没有内部 html、Tab 对象、Tab 列表的情况下创建它,然后使用

在控制中......但我不知道从那里去哪里,有什么提示吗?

0 投票
6 回答
5056 浏览

javascript - 用其 innerHTML 替换锚点

我想用它的innerHTML替换一个链接,它是怎么做的?

例子:

必须成为

试图用它的innerHTML替换节点,但我无法在节点本身中获取文本..

我想我必须使用正则表达式,但我不知道如何。

编辑:谢谢大家的快速回复!我似乎仍然无法正确处理。似乎还有更多的事情发生。

我也在使用原型 js。

我得到了一些可能包含链接的文本。如果文本包含链接,则应将其替换为 innerHTML。它看起来像这样:

我尝试使用 hasChildNodes() 检查文本是否包含链接,但它总是返回是,即使文本不包含链接或其他元素。所以我想也许文本也被认为是一个节点并尝试了 childElements[1]。那返回未定义。所以也许链接是文本节点的一个节点。没有!我正在抓取这些数据并评估 JSON,所以奇怪之处可能来自于此。不过,在响应的其余部分中遍历 DOM 进展顺利。

但是,当我提醒

实际的href得到警报!(localhost//链接/Go_%28To%29)

$('text'.childElements()[0].up() 让我找到实际的 td 父元素。

所以我正在使用

检查文本是否包含链接。

我想这有点离题,但我实际上无法正确理解 a 元素。有小费吗?也许正则表达式是最好的选择?