みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

JavaScriptでiframeの内容を「空ページ」にする方法

JavaScriptでiframeの内容を「空ページ」にする方法

動作環境はWinXP IE8です。
iframeでsrcに何も指定しないでhtmlを開くと、真っ白な状態で開きます。
プロパティを見ると「about:blank」となっています。

一旦他のページを開いたあとに、クリアボタン押下時に
この状態にしたいのですが、どうもうまくいきません。

とりあえず、普通にURLを指定するときと同じ感覚で
document.getElementById("…").src = "about:blank";
と書いてみたのですがうまくいきません。

document.getElementById("…").src = "";
でも同じです。

iframeの中身を空にする方法はないのでしょうか?
出来るのかできないのか、もしできるのならその方法を教えてください。
よろしくお願いします。

投稿日時 - 2010-10-29 18:51:07

QNo.6283562

暇なときに回答ください

質問者が選んだベストアンサー

うーん。再現できませんね、IE8で試してるんですけど
↓とどこが違います。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Test</title>
<script type="text/javascript">
<!--
function fuga(){
document.getElementById("hoge").src = "about:blank";
}
// -->
</script>
</head>
<body>
<div><button onclick="fuga();" type="button">clear</button></div>
<iframe src="http://okwave.jp/qa/q6283562.html" id="hoge"></iframe>
</body>
</html>

投稿日時 - 2010-10-29 19:24:03

お礼

>うーん。再現できませんね、IE8で試してるんですけど
>↓とどこが違います。

ご提示いただいたコードで試してみました。実現できました。
私のと違うところは…function名が「huga」では無く
「clear」であること…。

どうやらそれが原因だったようです。「clear」が予約語であり、
メソッド名に使用できないみたいですね。

恥ずかしいです。

お手数をおかけしました。
サンプルコードを書いていただいたおかげで
間違いにすばやく気付くことが出来ました。
ありがとうございました。

投稿日時 - 2010-10-31 09:35:50

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

removeAttribute を使ってみてはどうでしょう?

document.getElementById('SampleFrame').removeAttribute('src');

投稿日時 - 2010-10-29 19:17:18

お礼

原因はonclick時に呼び出す自分で作ったfunctionの
名前が無効なものだからでした。

ご提示いただいた方法でも実現できました。
ありがとうございました。

投稿日時 - 2010-10-31 09:37:23

あなたにオススメの質問