baseタグの targetをjavascriptから操作したい、、

[上に] [前に] [次に]
黒猫 [E-Mail] [HomePage] 1998/12/25(金) 01:40:04
検索エンジンページというのを作ってるのですが(ホームページ内websearch参照)、検索結果を表示するwindowをスイッチをつかって_blankもしくは_topに選べる様にしたいのですが、どの様に書きこめば良いのでしょうか、
MSのSDKではobject.targetで読み書きが可能と表記されてたのですが、うまく切り替えができません。

黒猫 [E-Mail] [HomePage] 1998/12/25(金) 01:41:57
ホームページのアドレスがまちがってました(-_-;)
http://members.xoom.com/comicpaw/html/gate.htm
です

mura [E-Mail] 1998/12/26(土) 11:32:39
あまり調べずに書いちゃいますが(^^;)、どうせJavaScriptを使うのなら
<A HREF="どこそこ" onClick="return TargetCall(this);">
のほうがよくないですか?

function TargetCall(lnk) {
lnk.target="行きたいターゲットを決めて入れる";
return true;
}

と書きます。(もちろんTargetCallとかlnkとかいう名前は好きに変えていいです)
難点があるとすれば、リンク先が多い時にいちいちonClickを
書かなきゃいけないというとこでしょうか。

mura [E-Mail] 1998/12/26(土) 12:01:45
あ、<A HREF>じゃなくて<FORM>の方でしたね。全然違うこと書いちゃいました。

残念ながら、IEではform.targetの書き換えがききません。
エラーにはなりませんしalert(フォーム.target);と書くとちゃんと出るんですが、
submitすると必ずHTMLの中で指定したターゲットになっちゃいます。
submit文でも<INPUT TYPE=submit>を使っても同じです。
IE4はわかりませんが、少なくともIE3ではダメです。(NNではできます)

targetだけじゃなくてactionもきかなかったかもしれません。

ちなみにトップページのスクリプトがガタガタだったので、一度チェックしてみてください。
NN4.07(Win95版)で見ています。
・最後に「;」のない文が多い(「{」「}」で囲まれた中の最後では
 エラーにならないかもしれませんが、それ以外のとこがたくさんあります)
・「</SCRIPT>」の直前が「// -->」でなく「-->」だけになっている所がある
 (JavaScriptエラーが出ます)
・document.writeの中で「</SCRIPT\>」と書いているとこがありましたけど、「<\/SCRIPT>」と
 書く方がいいです。

kuroneko [E-Mail] 1998/12/27(日) 18:45:15
教えていただきありがとうございます。
自分なりに工夫して、とりあえず別の方法で克服しました。
先にターゲットをウインドウネームで指定して、親windowの名前をscriptで変更するというやり方です、、(-_-;)苦しい、、
親windowの名前をターゲットで指定した名前に変える事で、新しいwindowを作ることなく検索結果を出し、名前が元の状態だったら新しくターゲットで指定した名前のwindowを出すって方法です。これだと新しいwindowが一個しか出ませんけどね(・_・;)そちらの方が便利だったので良しとしました(笑)
document.writeの方はaftershockが組み込んだとこですね、良く判ってませんけど(^^;ゞ<プログラムの基本を勉強してないので>
私の読んだ本だと";"セミコロンは改行のない一列のscript文字列中に
複数の命令文を書く場合それぞれを分けてPCが理解できる様に使用する。と、あって
それぞれの命令文のあとに改行がされてれば、有ってもなくてもどうでも良い。と、ありますが
やはり、入れといた方がいいのですか?(・_・)ノ

mura [E-Mail] 1998/12/28(月) 11:08:20
>それぞれの命令文のあとに改行がされてれば、有ってもなくてもどうでも良い。と、

確かに手もとのNN4ではセミコロンなくてもエラーにならないですね。(知らなかった(^^;))
つける理由があるとすれば、他のブラウザや古いバージョンでエラーになるかも
しれないというのと、将来のバージョンでダメになるかもしれない
(NN3→NN4などで文法チェックが厳しくなってます)というのがありますけど。

ちなみにエラーはだいぶ減りましたが、まだ「document.body has no properties」
が出ます。このプロパティってIE4だけのものなのかな??

kuroneko [E-Mail] 1998/12/28(月) 15:28:30
あ、すいません書いといたと思ったら忘れてました↑上記のHPのscriptはIE4もしくはIE5専用のサイトとしてscriptしたのでIE4でしか利かないプロパティーや参照文、ハンドラーを使ってます(^^;ゞ

[上に] [前に] [次に]