CEEK.JPで検索すると↓のようになりますが、
http://www.ceek.jp/search.cgi?q=%B6%B5%A4%A8%A4% …
このプレビューという機能が便利で自身のホームページに設置したいと考えましたが、どのようにすればいいのか教えて下さい。ソースを見た限りではJava Scriptだとは思うのですが、イマイチどの記述がこの機能を果たしてるのかわかりません。
教えてください。
No.1
- 回答日時:
>どの記述がこの機能を果たしてるのか
IFRAMEを動的に作って指定したURLの内容を表示しているようです。
動的にIFRAMEを作るのに、outerHTMLとかを使ったら、IEのみでしか実現できませんので、
簡便には
IFRAMEのlocation.hrefにURLをセットして
表示する。
IFRAME自体は、displayを切り替える
で似たような機能を実現できるような気がします
ありがとうございます。具体的にはどうするんでしょうか?単にIFRAMEでURL先を表示すると閉じたり開いたりできませんよね?またIFRAMは使用していないようなんですが、どうなんでしょうか。
locationはやってみましたがうまくいきませんでした。やり方が悪かったのかな。
No.2ベストアンサー
- 回答日時:
> IFRAMは使用していないようなんですが
http://www.ceek.jp/preview.js を読むとわかりますが使っています。
サンプルを作ってみました。
最新バージョンであればたいていのブラウザで動くと思います。(IE6とFirefoxでしか試してませんが。)
<html>
<head>
<title>プレビュー</title>
<script type="text/javascript">
<!--
function PreView(oA){
if(! document.createElement) return true;
if(oA.firstChild.nodeValue=='プレビュー') {
var NewIFRAME = document.createElement('iframe');
NewIFRAME.width='100%';
NewIFRAME.height='200';
oA.parentNode.replaceChild(NewIFRAME,oA);
NewIFRAME.parentNode.insertBefore(oA,NewIFRAME);
NewIFRAME.src=oA.href;
oA.firstChild.nodeValue='閉じる';
} else {
var TargetFrame = oA.nextSibling;
oA.parentNode.removeChild(TargetFrame);
oA.firstChild.nodeValue='プレビュー';
}
return false;
}
//-->
</script>
</head>
<body>
<p>
教えてgoo
<a href="http://oshiete1.goo.ne.jp/" onclick="return PreView(this);">プレビュー</a>
</p>
<p>
<a href="http://www.google.co.jp/" onclick="return PreView(this);">プレビュー</a>
</p>
</body>
</html>
No.3
- 回答日時:
#1>具体的にはどうするんでしょうか?
例えば、IFRAMEにIF1とか名前とIDを付けたら
javascriptから
IF1.location.href="test.html";
の様にして、表示する内容を変更できます。
getElementById('IF1').style.display="none";
にすれば非表示にできます。
そういうことする関数を、たとえばボタンに割り当てれば、切り替えができます。
ボタン自体の表示の文字も閉じる、プレビューの様に切り替えることができます。
実際にサンプルを書いてみようかと思いましたが、
#2様のサンプルが素晴らしいので、止めときます。
No.4
- 回答日時:
>CEEK.JPではどちらの回答のものを使ってるんですか?
innerHTML等を使って動的に作成していますので、どちらでもないです。
innerHTML等は、便利に使えますが、IE互換のブラウザでしか使えませんから、#2の方法の方が優れています。(DOMに対応していないブラウザではだめだが、最新のブラウザならほとんど対応していると思います)
innerHTMLは初めて聞きました。隠しフレームというやつですかね。
IE非対応なのはかないませんね。難しいですね。
DOMはダイナミックHTMLのことですね。
ありがとうございました。
勉強いたします。
No.5
- 回答日時:
DOMは基本的にはおすすめなんですが、CEEK.JPのように同時にレイアウト用のテーブルなども一緒に展開したい場合、ちょっと面倒になってきます。
スタイルシートを使いこなせれば、サンプルのようにiframeだけを展開すれば済むのですが・・・
#1の方法ならば必要なタグを並べて、ひっくるめて隠したり表示したりできるので、場合によっては#1の方法のほうが適しています。
ありがとうございます。なかなか奥が深くて一朝一夕にはいかないのが現状です。。。
コツコツと勉強してまいりたいと思います。
サンプル、活用させていただきます。
No.6
- 回答日時:
>innerHTMLは初めて聞きました。
innerHTMLは、その指定した要素の内容にHTMLを記述するプロパティです。
例えば、
<p ID="SAMPLE"></p>
とか書いてあるタグが有る時
document.getElementById("SAMPLE").innerHTML="<b>ボールドになります</b>";
とすると
<p ID="SAMPLE"><b>ボールドになります</b></p>
と初めから書いたのと同じ意味になります。
似たものに、innerTextがあります。こちらは、HTMLでなくテキストを書きます。
同じようにouterHTMLは、外側ってことですね。
IE非対応なのはかないませんね。難しいですね。
>DOMはダイナミックHTMLのことですね。
DOM:Document Object Modelで
書かれている要素をツリー上に構成されているものとして、扱うことができます。HTMLで、コレを利用してダイナミックに構成や内容を変更することができますが、DHTMLだけというわけでなく、XMLなどもこれを利用してスクリプトからアクセスします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
- Amazon アマゾンビデオの設定 プレビューのオフ 1 2023/01/29 08:34
- その他(パソコン・スマホ・電化製品) Apple Watchについて Apple Watchの購入を検討しています。 使いたい機能は、通知 4 2023/07/30 01:44
- 教えて!goo 指摘されたので質問です 1 2022/04/17 14:11
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Windows 10 パソコン初期化の件です 2 2022/06/05 11:05
- Safari(サファリ) ブロック機能 9 2023/02/05 20:07
- メディア・マスコミ ニュース検索サイト「ceek.jp」 1 2022/10/18 22:14
- 画像編集・動画編集・音楽編集 MP4を結合したい 1 2023/03/07 15:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
window.close()で閉じられない
-
HTMLでブラウザを終了させる方法
-
location.hrefの使用条件について
-
小窓を表示させたい
-
Microsoft1Officeの互換ソフト...
-
htmlでテーブル内にテキストボ...
-
バーコードのサイズは拡大縮小...
-
CSSのtransform: translate(-50...
-
エクセル 画面表示拡大率によ...
-
エクセルでサイズ指定でPOP...
-
パソコンでランドルト環の作成...
-
Excel セルの幅が合わない
-
エクセルでサイズに合ったもの...
-
アップロードするサーバーによ...
-
<tbody>は何のためにあるんでし...
-
エクセルのセル幅の表示
-
chromeだけbody直下に空白が開く
-
aタグに直接style=""で:hoverを...
-
インラインフレームの表示位置...
-
エクセルの行の幅がずれる
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
指定時間になったら、WEBサイト...
-
window.close()で閉じられない
-
HTMLでブラウザを終了させる方法
-
window.openした時、親ウィンド...
-
『入力文字列 + .html』 に...
-
javascriptでタイトルバーを非...
-
サブウインドウを開くときのフ...
-
小窓を表示させたい
-
サブウィンドウから、親ページ...
-
location.hrefの使用条件について
-
直リンクを弾くJavaScriptについて
-
モーダルダイアログから呼び元...
-
子Windowの操作(親Window遷移後)
-
プレビューウインドウ
-
JAVA SCRIPTで作成したポップア...
-
showModalDialogで動的にページ...
-
Javascriptを使用したサムネイ...
-
クリックで画像表示、さらに画...
-
location.hrefで別窓にリンクを...
-
「このページを閉じる」の設定...
おすすめ情報