我正在尝试在iframe内的textarea中写入文本时显示文本。因此它将像通过外部页面一样显示。
当前代码显示div中输入id为#34; div"。但是我想在iframe中显示它,这可能吗?
我目前的代码是:
<script language='javascript'>
function hot(){
document.getElementById("div").innerHTML=document.getElementById("text").value
}
window.onload = function() {hot();};
</script>
<textarea id="text" onKeyUp="hot();"></textarea>
<div id="div"></div>
答案 0 :(得分:1)
<script type='text/javascript'>
function hot(){
window.frames['iframe'].document.body.innerHTML=document.getElementById("text").value
}
</script>
<textarea id="text" onKeyUp="hot();"></textarea>
<iframe id = "iframe"></iframe>
答案 1 :(得分:0)
根据this question的答案,以下代码可以解决问题:
<textarea id="text">Type <b>HTML</b> here...</textarea><br>
<iframe id="frame">
$( function () {
var $text = $( '#text' );
var doc = $( '#frame' )[0].contentWindow.document;
var $body = $( 'body', doc );
var hot = function () {
$body.html( $text.val() );
};
$text.keyup( hot );
hot();
} );
这是live demo of the code above on jsFiddle。
(我冒昧地使用jQuery,因为你用它标记了你的问题,但如果这是你喜欢的话,将这些代码转换回纯JavaScript应该不难。)