Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery预览html文档_Javascript_Jquery_Html_Iframe - Fatal编程技术网

Javascript 使用jquery预览html文档

Javascript 使用jquery预览html文档,javascript,jquery,html,iframe,Javascript,Jquery,Html,Iframe,尝试学习jquery。遇到了关于通过iframe预览textarea输入的代码 HTML <div class="content"> <textarea></textarea> <iframe></iframe> </div> 我认为html元素需要使用.html()而不是.attr()来预览文本区域输入和html标记?不要误解我的意思,它是有效的,只是不明白为什么不直接使用.html()方法。这两种方法的区别是什

尝试学习jquery。遇到了关于通过iframe预览textarea输入的代码

HTML

<div class="content">
  <textarea></textarea>
  <iframe></iframe>
</div>

我认为html元素需要使用.html()而不是.attr()来预览文本区域输入和html标记?不要误解我的意思,它是有效的,只是不明白为什么不直接使用.html()方法。这两种方法的区别是什么?

iframe有自己的窗口,该窗口与父页面窗口隔离,不是标准的内容元素

它也有自己的文档、正文等

要在其中设置
html()
,您必须首先进入该窗口以处理其内部文档

srcdoc只是在iframe文档中设置内容的快捷路径

.html()返回html标记内部的内容。因此,如果在div标记上调用它,它将返回
之间的任何值。.attr函数返回属性的值,例如
img
上的
src
属性,锚定上的
href
属性。iframe的
srcdoc
属性很奇怪,因为该属性接受html。您在示例中所做的与在纯JS中所做的等效:

document.getElementById("exampleFrame").srcdoc = "<div>html inside iframe</div>";
document.getElementById(“exampleFrame”).srcdoc=“iframe内部的html”;
从技术上讲,
中没有任何内容,而是在
的srcdoc属性中。因此,您需要调用.attr

更多信息:

document.getElementById("exampleFrame").srcdoc = "<div>html inside iframe</div>";