<html>
<body>
<iframe id="src">
</body>
</html>
Javascript 関数を使用して div 要素に iframe を表示したいのですが、何が機能していないのかわかりません。何か案は?
document.getElementById('site').src = http://www.w3schools.com/;
前もって感謝します!
<html>
<body>
<iframe id="src">
</body>
</html>
Javascript 関数を使用して div 要素に iframe を表示したいのですが、何が機能していないのかわかりません。何か案は?
document.getElementById('site').src = http://www.w3schools.com/;
前もって感謝します!
試す
document.getElementById('src').src = 'http://www.w3schools.com/';
a)URLは文字列(引用符付き)として提供する必要があります
b) iframe の id ではありsrc
ませんsite
まず、いくつかの小さなこと:
id
あなたのようiframe
に見えますが、そうsrc
ではありませんsite
。と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;
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>