【发布时间】:2020-08-05 12:31:21
【问题描述】:
为什么iframe 将我的 html 内容视为文本内容。
问题:我想用标签呈现整个 html,而不是文本。
下图显示了我的问题:
我的代码:
$('#resultBtn').off('click');
$('#resultBtn').on('click',function(){
var html = '<p id="pclick">Click me to see Alert</p>'
var javascript = `document.querySelector('#pclick').on('click',function(){
alert('clicked me');
})`;
var bodyContent = html +`<script>${javascript}<\/script>`;
$("#result_iframe").contents().find("body").html(`${bodyContent}`);
});
#result_iframe{
width: 400px;
height: 200px;
background:#eaeaed;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="resultBtn">see Result</button>
<iframe id="result_iframe" frameborder="0"></iframe>
【问题讨论】:
-
@terrymorse,像这样的完整 html 内容
<p id="pclick">Click me to see Alert</p><script>document.querySelector('#pclick').on('click',function(){ alert('clicked me'); })</script> -
这不是 iframe 的工作原理。
-
@terrymorse,然后stackoverflow、jsfiddle、codepen的代码sn-p如何工作,它与iframe一起工作
-
我指的是这个网站来创建我自己的 jsfiddle websanova.com/posts/jquery/… 它的演示在这里 jsnova.websanova.com
-
我将在答案中提供参考。
标签: javascript jquery iframe