ラウンジ(兼FAQ掲示板)

birthdayをフレームで使用の場合
過去ログ NO.1064745525
□ mikicha [2003年09月26日18時43分]
初めまして。birthdayについて教えていただきたいのですが。
設置も出来、何人かの方に登録していただきました。
しかしフレームを使ったページに設置した為、
登録して下さった方のHOMEへ飛ぼうとすると、
フレーム内に新しいページが表示されてしまいます。
『登録者一覧』のページのHOMEからだと、別ウィンドゥで開くのですが、
今月のお誕生日の覧から飛んでも、別ウィンドゥで開く設定に出来ますか?
よろしくお願いします<(_ _)>
□ NXer [2003年09月28日12時05分]
はじめまして。NXerです。

□>『登録者一覧』のページのHOMEからだと、別ウィンドゥで開く

HTMLのリンクタグには、読込先のウィンドウを指定するtarget属性があり
ます。↓の行中、_blankの指定で名前が付けられていない新しいフレームに
内容が表示されます。スクリプトの通り実行されていますね。
-------------------------------------------------------------
367 sub viewall {
398 if ($url) { $url = "<a href=\"$url\" target=\"_blank\">
-------------------------------------------------------------

■>今月のお誕生日の覧から飛んでも、別ウィンドゥで開く設定に出来ますか?

設定できるか、556行目(付近)をご検討ください。
------------------------------------------------------
505 sub js {
556 if(val == "") alert("誰も選択されていません。");
else if(b_home == "") alert("ホームページの登録はありません");
else if(navigator.appName.charAt(0) == "M" &&
navigator.appVersion.indexOf("Mac") > 0)
document.location = b_home;
else window.open(b_home);
#↑この行です。「さもなければb_homeのURL別窓にあけなさい」
}
------------------------------------------------
問題のelse文です。
--------------------------
window.open(b_home);
---------------------------
ここは、javascriptで記述されています。HTMLの「ウィンドウを開く」にあたる
オブジェクトwindowのopenメソッドが使われています。普通は次の属性指定が
可能です。上の場合は、指定がなく、その場合は、ウィンドウ名、スタイルは
初期設定になるのでしょうか。

window.open('URL','ウィンドウ名’,'スタイル’);

私は、サーバーの都合でこのb_homeという変数を変更しました。
次の変更が可能か動作確認はしていませんので、そちらでお確かめください。

----------------------------------------
window.open(b_home,'','fulscreen=yes');
----------------------------------------

fulscreenは初期値が=noですから、おそらく、そのため、フレーム
内に表示されたものでしょうか。

当方の経験に基づく提案です。とても複雑な600行前後のスクリプトで
全くの的外れということも頭の片隅(あるいは全体)において、お試しください。
また、現在稼働中のcgiファイルとデータファイルは別ファイルにバックアップ
するなどして、運用中のデータ-保全対策をお願いいたします
□ mikicha [2003年09月28日13時04分]
NXerさん、こんにちわ。
お答えいただきありがとうございます<(_ _)>
---------------------------
window.open(b_home);
---------------------------

----------------------------------------
window.open(b_home,'','fulscreen=yes');
----------------------------------------
に書き換えて試してみたのですが、やはりフレーム内で開いてしまいます。
一応URLを残しておきますね。
http://tora7.ciao.jp/
皆さんに登録していただいたページを、サイト内のコンテンツと思われたら困るので、なんとかしたいのですが・・
□ mikicha [2003年09月28日13時56分]
もしかしたら、見る側の環境によっても違うのでしょうか?
私は普段MacのIEを使用しているのですが、
試しにNetscapeで確認をしたところ、
この方法で、別ウィンドゥで開く事が出来ました。

Winユーザーの方が、別ウィンドゥで見えるのなら、
あまり気にする事はないかな?
NXerさん、丁寧なお答えをいただき、ありがとうございました<(_ _)>
□ NXer [2003年09月28日17時44分]
>試しにNetscapeで確認をしたところ、、、

どうもお手数をかけてしまいました。また、異なるブラウザーで
即座に確認いただき嬉しいです。NXerです。

宮坂 雅輝『JavaScript Handbook 3rd edition』ソフトバンク
2001、(2002)などを参考にしました。
windowオブジェクトのブラウザ対応表によると(p.126)
win IE4 NS 4以上  mac IE4 NS 4以上
となっています。

一つだけ初期値の設定について追加します。
というのは上のURLでfulscreenになったのはいいのですが、
ツールバーなどのオプションが非表示になり、元に戻ることが
できなくなりました。
「どれかひとつでもオプション項目を設定した場合、設定されて
いないオプションの項目はすべてno(非表示)になります。」
(アンク著『ホームページ辞典』2001、p.394)
ということです。
結果的に、すえぽんさんは次のような煩雑さや、機種・ブラウザ
依存を避けるため最大公約数として、↓に落ち着いたのかなと
想像します。
--------------------------
window.open(b_home); #簡潔な記述
---------------------------
widnow.open(b_home,'','fulscreen=yes,toolbar=yes,menubar=yes,
scrollbar=no, width=400, height=150') #複雑、機種・ブラウザ依存
---------------------------------------------------------
この辺りは人によりtriviaにあたる項目です。
「へぇ!」度が、それなりあるといいですね。
□ mikicha [2003年09月28日18時44分]
> 一つだけ初期値の設定について追加します。
> というのは上のURLでfulscreenになったのはいいのですが、
> ツールバーなどのオプションが非表示になり、元に戻ることが
> できなくなりました。

なるほど!!
別ウィンドウで開いた事が嬉しくて、そこまで確認出来ませんでした(笑)
確かに、そうなってしまいますね。
そして、もしやと思い
--------------------------
window.open(b_home);
---------------------------
に戻してファイルをUPし、Netscapeで確認したところ、
ちゃんと別ウィンドゥで開くのです〜(≧_≦)
単に私の環境(Mac、IE)のせいだったと思われ・・
結局元の記述に戻す事にしました。

NXerさん、いろいろとありがとうございました。
私の方こそお手数をかけてしまい申し訳ありません。
これからは「おかしいな?」と思ったら、
必ずNetscapeでも確認するようにしますね。
お答えいただき、嬉しかったです。

suepon.com | CGI作成/CGI制作 | JavaScript | ドメイン検索 | バナー自動作成 | Google ダンスツール | 松浦亜弥 | H.P.memo | パソコン | ネイル

Copyright (C) 2002 - 2008 suepon , All rights reserved. Powered by CGI Script Market.