1

我正在尝试在 iframe 内的 textarea 中写入文本时显示文本。因此,它将像通过外部页面一样显示。

当前代码在 id 为“div”的 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>
4

2 回答 2

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>

http://jsfiddle.net/dD3R3/1/

于 2013-07-21T19:28:11.953 回答
0

根据这个问题的答案,下面的代码应该可以解决问题:

<textarea id="text">Type &lt;b&gt;HTML&lt;/b&gt; 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();
} );

这是jsFiddle 上面代码的现场演示

(我冒昧地使用了 jQuery,因为你用它标记了你的问题,但如果你喜欢的话,将这段代码翻译回纯 JavaScript 应该不难。)

于 2013-07-21T19:24:20.910 回答