0
<html>
<body>
   <iframe id="src">

</body>
</html>

Javascript 関数を使用して div 要素に iframe を表示したいのですが、何が機能していないのかわかりません。何か案は?

document.getElementById('site').src = http://www.w3schools.com/;

前もって感謝します!

4

3 に答える 3

5

試す document.getElementById('src').src = 'http://www.w3schools.com/';

a)URLは文字列(引用符付き)として提供する必要があります

b) iframe の id ではありsrcませんsite

于 2013-07-07T11:43:13.003 に答える
0

まず、いくつかの小さなこと:

  1. idあなたのようiframeに見えますが、そうsrcではありませんsite。と
  2. iframeタグを閉じる必要があります。

あなたがちょうど1つを扱っていると仮定すると、iframeそれは必ずthenを持っていidます:

var myIframe = document.getElementById('src');
// gives you just that one iframe element

ただしdocument.querySelectorAll、複数のiframe.

var iframes = document.querySelectorAll('iframe');

実際の動作を確認してください: http://jsbin.com/equzey/2/edit

重要な補足事項: 要素へのアクセスのみが必要な場合(たとえば、そのソースを操作したり、属性iframeを介して CSS を適用したりする場合)、上記は問題ありません。styleただし、 のコンテンツを操作する必要がある場合は、次のプロパティiframeを使用して Web ページ コンテキスト内に入る必要があります。contentWindow

var iframes = document.querySelectorAll('iframe');
iframes[0].contentWindow;
于 2013-07-07T11:59:59.500 に答える
0

iframe には idsiteがないため、コードは効果がありません。iframe(タグを閉じていないことにも注意してください) .

これが正しいコードです(フィドル)。

<input type="button" onclick="changeIframeSrc('myFrame');" value="changeSrc">
<iframe src="http://www.example.com" id="myFrame"></iframe>

<script>
function changeIframeSrc(id) {
    e = document.getElementById(id);
    e.src = "http://www.wikipedia.com/";
}
</script>
于 2013-07-07T11:46:56.073 に答える