为什么在追加到DOM时连接HTML标记

时间:2013-07-09 15:32:10

标签: javascript jquery concatenation

我之前见过几次,最后决定找出原因。

鉴于这行代码:

$("body").append('<ifr'+'ame src="foo.html"></ifr'+'ame>');

为什么他们会联合'<ifr' + 'ame'</ifr'+'ame>'

1 个答案:

答案 0 :(得分:0)

有点不确定我是否应该回答这个问题,因为可能有很多原因,只有作者会知道。但无论如何都要进行......

我能想到的唯一原因(除了令人讨厌之外)是阻止某些内容查看代码并查看完整的<iframe>标记。例如,如果我搜索代码“iframe”,我将不会得到任何匹配。

现在对于这个答案的推测部分:为什么有人想阻止某些东西找到匹配的iframe标签?

以下是一些选项,由我和Kevin B通过评论提供:

  1. 防止进程扫描代码文件并检测iframe代码。例如,假设您有一个允许HTML / Javascript但不允许使用iframe的内容管理系统。部分上传过程可能是分析代码并查找标记。这里使用的连接技术可以防止扫描检测到iframe,从而允许上传

  2. 解析软件,例如语法高亮显示器可能在使用混合在JavaScript内部的html时遇到问题,因此添加连接方法可能会允许解析器成功地将字符串识别为实际意味着的字符串

  3. 在所有示例中,可以公平地说,此技术也可能适用于JavaScript字符串中存在的其他标记,而不仅仅是此示例中显示的iframe