WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:ページ操作とURL履歴について

0:[投稿] Boo [2004/03/05 14:57 ][環境:NetScape4.06 Nt.4.0 HP-UX11i]

現在表示しているページを別のページに入れ替える際に、"submit()","location="などがありますが、実際には"submit()"と"location"指定とでは、内部処理的にどのような違いがあるのでしょうか?
また、どちらの方法を用いた場合にURL履歴が作成されるのでしょうか?


1:[回答] Yachimata [2004/03/05 15:59 ]

>内部処理的にどのような違いがあるのでしょうか?

「内部」と仰っているのはブラウザのソースレベルの事でしょうか。
であれば、それは開発元に訪ねるしかないと思います。
NetScape4.06 がオープンソースであればまた違うのでしょうけど。


>また、どちらの方法を用いた場合にURL履歴が作成されるのでしょうか?

当然ご自分で試されてますよね?
結果は如何でしたか?


2:[回答] gun [2004/03/05 16:19 ]

>0
location.replace(url)もお忘れなく。


3:[回答] Boo [2004/03/05 16:29 ]

>>>ページに入れ替える際に、"submit()","location="などがありますが・・・
>>また、どちらの方法を用いた場合にURL履歴が作成されるのでしょうか?
>結果は如何でしたか?
結果としては"submit()"の場合URL履歴が生成され"location"指定の場合URL履歴が生成されていないように見受けられます。(history.go(-1)の結果を元に)
画面A⇒(submit)⇒画面B⇒(location)⇒画面C⇒(history.go(-1)⇒画面A
となった

"history.go()"自体はURL履歴を元にページの入替を行っていると言う認識でよいのですよね?


4:[回答] Boo [2004/03/05 16:34 ]

>>内部処理的にどのような違いがあるのでしょうか?

>「内部」と仰っているのはブラウザのソースレベルの事でしょうか。
>であれば、それは開発元に訪ねるしかないと思います。
>NetScape4.06 がオープンソースであればまた違うのでしょうけど

表現が適切ではありませんでした。
「内部処理」といっているのは、HTML(JavaScript)の仕様として、"submit()"を仕様した場合と"location"指定をした場合で、URLの入替(URL履歴の更新)が行われているのかどうかという問合せです。


5:[回答] AC [2004/03/05 22:45 ]

submit() は、意味的には
<form action="">
<p><input type="submit" value="Submit"></p>
</form>
でSubmitボタンを押したのと同じです。

locationの方はECMAScriptに定義されているわけではなく、またW3C DOMの守備範囲でもないわけで、標準的な仕様は存在していません。NetscapeのJavaScript仕様をまねて他社がJavaScript互換スクリプト言語を作ったので、NetscapeのJavaScript仕様が事実上の標準になっていると思われます。

Netscape4.xのJavaScriptは、JavaScript 1.3に定義されています。
http://devedge.netscape.com/library/manuals/2000/javascript/1.3/reference/location.html
なお、この文書は、Netscape6.x,7.xやGecko系ブラウザの存在する今では時代遅れ(obsolete)で、JavaScript1.5が最新です。

この文書を見ても、「windowに関連付けられたURLを変更したければ、hrefプロパティを変更せよ」と書かれているだけで、履歴がどうなるかは書かれていないです。
ただし、replaceメソッドのところには、「履歴エントリに指定されたURLをロードする」とあります。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World