WEB相談室

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

タイトル:新ウィンドウで指定場所を表示

0:[投稿] たなか [2002/09/26 13:29 ][環境:MAC+IE わからない]

javascriptで新しいウィンドウを開く際に、開くページの指定場所(a name=○○のところ)を表示したいのですが、開くURLの指定に"〜.html#○○"と指定しても、MacのIEではその場所に移動してくれません。

ちなみに使っているjavascriptは

function openWin(theURL) { //v2.0
new_window=window.open(theURL,'newwin1','scrollbars=yes,resizable=yes');

リンクの指定は
<a href="javascript:openWin('001.html#001')">〜</a>

というものです。
javascript初心者なので、なにをどうしたらよいのかサッパリに近いです。
なにか方法がありましたらご教示くださいませ。


1:[回答] 平野 敬 [MAIL] [URL] [2002/09/26 15:33 ]

<a href="#"
onClick="openWin('001.html','001')"
onKeyPress="openWin('001.html','001')">〜</a>

function openWin(givenUri,givenAnchor) {
 var new_window = window.open(
  givenUri,
  'newwin1',
  'scrollbars=yes,resizable=yes'
 );
 new_window.location.hash = givenAnchor;
 return false;
}


2:[回答] [2002/09/26 16:43 ]

こちらの方がよろしいかと。
スクリプトオフでも開けますから。

<head>
<title>test</title>
<script type="text/javascript">
function winOpen(uri, flagId)
{
 var nwin = window.open(uri, '', '');
 nwin.location.hash = flagId;
}
</script>
</head>

<body>

<p>
<a href="001.html#001" target="_blank"
 onclick="winOpen('001.html','001');return false;"
 onkeypress="winOpen('001.html','001');return false;">001.html#001</a>
</p>

</body>


3:[回答] ween [2002/09/26 18:36 ]

>>2
> onkeypress="winOpen('001.html','001');return false;"
これ、やるならばキー判定しないとマズくないですか?
keypress イベントが発生するのは Enter キーだけじゃないです。
実装にもよりますが、安易に false を返すのは
キー操作が一切不能な状態に陥る危険性があります。

# onclickも本当はボタン判定した方がいいんでしょうけどね。


4:[保留] たなか [2002/09/26 18:55 ]

回答ありがとうございました。頂いた回答を元に試してみたのですが、出来ませんでした…

1>
<script language="JavaScript">
<!--
function openWin2(Url,givenAnchor)
{
var new_window = window.open(Url,'help2','scrollbars=yes,resizable=yes,resizable=yes,width=750,height=500');
new_window.location.hash = givenAnchor;
return false;
}
//-->
</script>
として、
<a href="#" onClick="openWin2('usr-wrd.html','002')" onKeyPress="openWin2('usr-wrd.html','002')">
としましたが、やはりMac+IEでは作動せず、さらにMac+NNでは不可解な動き(一度フォーカスするのに、なぜか直後にページトップへ戻ってしまう)をしました…

2>
<script language="JavaScript">
<!--
function openWin3(URL,anc){
 var nwin = window.open(URL,'help2','scrollbars=yes,resizable=yes,resizable=yes,width=750,height=500');
 nwin.location.hash = anc;
}
//-->
</script>
とし、
<a href="usr-wrd.html#001" target="_blank"onclick="openWin3('usr-wrd.html','001');return false;" onkeypress="openWin3('usr-wrd.html','001');return false;">
としましたが、まったく新しいウィンドウが開いてしまい、目的とは違う動作となってしまいました。

やりたいことは、
・指定したサイズのウィンドウを開き、リンクはそのウィンドウへ読み込む
・リンク先の場所指定をしたい
です。他にも解決方法がありましたら、ご教授お願いいたします。


5:[回答] たなか [2002/10/01 12:18 ]

間違えて保留にしてしまいました。
引き続き、解決方法お待ちしております。
よろしくお願いします。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World