Top    

掲示板つけました記録 その3 Javascript編


しばらく覚え書き状態ですみません。
Javascriptネタですが、いろんなところで使えるので書いておきます。

書き込みやすいように、書き込み欄を別窓にすることに決めたので
まずは別窓を開かせる、Javascriptを使います。

window.openを使います。

function文を使う方がスマートですが、直接リンクに埋め込む方法でやっちゃいます。
(これだと他のところにも仕込みやすいし)

<a href=# onclick="menuwind = window.open('りんく先', 'win','width=300,height=300,resizable=yes,scrollbars=yes') ;menuwind.moveTo(0,0)">

りんく

</a>

幅や高さ、リンク先は適当に。(<>が全角になってます)


書き込み欄を別窓にした場合、どうやってメインウィンドウの
BBSを更新するかが問題ですが、こんなふうにしてみました。

別窓からメインウィンドウをコントロールする方法です。

window.openerを使いました。

その1
window.opener.location.href='BBSプログラムまでのパス';

function submitform(){
document.form1.submit();
window.opener.location.href='BBSプログラムまでのパス';
}

ボタンは
<input type="button" value="Post" onClick="submitform()">


この方法だと、Safari WindowsIE6ではiframe内のBBS部だけ更新されて
いい感じでうまく行くのですが、MacIEで失敗します。
書き込んだ後の更新のタイミングが早いせいと思われます。

仕方がないので、その1の方法はやめて
一旦書き込んだ後,確認画面でページ全体を更新するようにしました。

POSTした後の確認画面で

<input type="button" value="Load" onclick="window.opener.top.location.href='ブログページのパス';self.close();">

として、ページ全体を更新して対処しました。ついでに小窓を閉じます。
ふーなんだよ〜MacIE......

**追記
reload()でもうまく行きますね。こっちのが良さそう。
<input type="button" value="Load" onclick="window.opener.location.reload();self.close();">


<a href=# onClick="window.opener.location.href='http://www.apple.com/'">Apple</a>
(<>が全角になってます)

なんてすると、小窓からメインウィンドウを書き換えるリンク集なんができますね。

Posted: Mon - November 24, 2003 at 10:43 AM