• ベストアンサー

window,open

★=window.open("▲","☆","■") で★と☆がウィンドウの名前と書いてあったのですが 区別がわかりません これは開いたウィンドウの名前なのでしょうか? それともこのスクリプトがあるウィンドウをさすのでしょうか? あとウィンドウの名前のつけ方も教えていただけたら うれしいです 具体的には newWin=window.open("control,html","newWIn","width =240.height=120"); と書いてありました

  • R7414
  • お礼率97% (47/48)

質問者が選んだベストアンサー

  • ベストアンサー
  • Dpop
  • ベストアンサー率51% (279/544)
回答No.4

#1です。 >ということは☆は相手側(画面を切り替えるウィンドウ名)で★は開いたあとのウィンドウ名ってことですか? ☆の認識は、それで良いと思います。(一瞬、ん?と思いましたが(笑)) 補足をすると、生成するウインドウに付けた*名称*の事です。 ★は微妙に(いや、かなりかも知れない。)違います。ウインドウ名ではありません。オブジェクトです。オブジェクトは名前ではありません。 JavaScriptは、一応オブジェクト指向言語(oop言語)の端くれでして、プログラムの中で取り扱われる多くの情報がオブジェクトとして抽象化されています。 あまり、詳しいことを書くとoopの説明になってしまうので割愛しますが、いくつかの関数を利用する時に受け渡される「情報の束」だと考えると、考えやすいかも知れません。 ウインドウ名と表現されていたので、ん?分かって無いかも知れない。。。と感じてしまいました。単に、表現が上手にできなかっただけかな?

R7414
質問者

お礼

再度の回答ありがとうございます^^ なるほど~名前ではなかったんですね >ウインドウ名と表現されていたので、ん?分かって無いか>も知れない。。。と感じてしまいました。単に、表現が>上手にできなかっただけかな? いいえわかってなかったです(^^; オブジェクト指向について勉強してみようとおもいます ありがとうございました

その他の回答 (4)

  • yahtzen
  • ベストアンサー率46% (189/410)
回答No.5

No.3です。中途半端なお返事をしてしまい申し訳ありません。★について、まったく触れていませんでした。基本的に★と☆は別物です。おそらくなのですがこのwindow.openメソッドを包むような感じのfunctionが存在すると思うのですが、いかがでしょうか? たまたま、これを書き込んだ方が★と☆を同じに書いているのですが、ちょっと表現が適切か分かりませんが、★はfunction内の単なる記述です。もちろん☆のほうも新しいウィンドウを開くつもりで、どのフレームにも割り当てられていない名称でしたら、これまた適当でかまわないわけですが、こちらはあくまでウィンドウ名です。うーん、説明下手がばれてきました。このへんでギブアップです、ごめんなさい。

R7414
質問者

お礼

私がアフォなせいで迷惑かけてしまってすいません(^^; なるほど~なんとなくわかってきました! あとは精進してがんばりたいとおもいます^^ ありがとうございました!

  • yahtzen
  • ベストアンサー率46% (189/410)
回答No.3

このメソッドを端的にあらわしますと、 window.open("開くURL","ウィンドウ名","属性")となります。 つまり1番目にあるページを開くわけですが、2番目にあるウィンドウ名に開きます。そのウィンドウ名が(フレームとして)あらかじめ設定されていないのでしたら新しいウィンドウとして開きます。3番目のは、そのウィンドウを開く際の補助的なものです。今回の場合は幅が240px,高さが120pxという設定です。それ以外にもツールバー、ロケーションバー、ディレクトリバー、ステータスバー、メニューバー、スクロールバー、リサイズボックスの有無を設定できます。書き込んでない場合は通常"有り"と判断されるようですが、IE6の場合だけは"有り(yes)"と表記しないとすべて"無し"となるようですが、たしかではありません。

R7414
質問者

お礼

回答ありがとうございました! IE6の場合だけ違うんですね できたら#1さん#2さんのお礼のほうも目を通して いただけたらうれしいです

  • manayu
  • ベストアンサー率53% (79/148)
回答No.2

★は新たなウィンドウを参照します。これを用いて、ウィンドウを操作することができます。 ☆は、<frame> タグの name 属性で指定した名前や、他の open() で 作成した名前を指定します。 その名前を持つウィンドウがまだ存在しない場合は、その名前を持つ新規ウィンドウが 開きます。 タグ <FORM> や <A> の オプション TARGET に対応します。 参考になるかも・・・。 http://member.nifty.ne.jp/aya/js2/js222.htm http://tohoho.wakusei.ne.jp/js/window.htm#open

参考URL:
http://member.nifty.ne.jp/aya/js2/js222.htm,http://tohoho.wakusei.ne.jp/js/window.htm#open
R7414
質問者

お礼

回答ありがとうございます! ということは☆はどこかで定義されてないとだめということでしょうか? また☆は開く相手のウィンドウ名で★は開いたあとの ウィンドウ名だということでしょうか?

  • Dpop
  • ベストアンサー率51% (279/544)
回答No.1

☆は、これから作成しようとする、ウインドウの識別名です。 もし、windows.openを複数実行した時、☆が別の名前であると、複数のウインドウが開きますし、☆が同じだと、そのウインドウに対して、内容の書き換え(表現が適当ではありませんが。)が行われます。 ★は、作成するウインドウのオブジェクトです。作成たしウインドウに対して、なにかの処理を行う場合。例えば、writeln でそのウインドウに対して、文章を書き込む場合、★.writeln なんて形で指定するためのものです。 オブジェクトの使い方や、どの関数に利用できるのかは、リファレンスなどで確認してください。

R7414
質問者

お礼

ということは☆は相手側(画面を切り替えるウィンドウ名)で★は開いたあとのウィンドウ名ってことですか? 回答ありがとうございました^^

関連するQ&A

  • window.openについて。

    初歩的な質問で申し訳ありません。 ★<script> function openWin(filename){ newWin = window.open(winname + ".html", "", "width=300, height=200, location=no, menubar=no, toolbar=no,resizable=yes"); } </script> ★<a href="JavaScript:openWin('pr00001')">PR00001</a> ・・・という二つのパーツ(★)があるのですが ここで分からないことがあります。 『function openWin(filename)』の『filename』にpr00001というhtmlファイルを埋め込む・・というのは理解できるのですが最初のパーツにある『newWin = window.open(winname + ".html"・・・』の中の『winname + ".html"』とは何を指しているのでしょうか・・・・。 大変申し訳ありませんがご指導お願いいたします。

  • window.openについて

    window.openを使って新しいウインドウを開きたいと思い質問させていただきます。 現在、 ---------------------------------------------------------------- <script type="text/javascript"> <!-- function w_opn() { newWin = window.open("abc.html","","width=200,height=300"); win.moveTo(0,0); } // --> </script> そして、BODY内に <a href="javascript:w_opn()">開く</a> --------------------------------------------------------------- というふうに作成しています。 この方法だと、リンク元が複数ある場合、HEAD内のJavaScriptも複数記述しないといけないと思うのですが、これをひとつのJavaScriptで制御したいのです。 どなたかご教授願えませんか?参考になるサイトのURLでも構いません。

  • window.openについて

    こんにちは。質問させてください。 PHPを使用してプログラムを作成しています。 その中でJavaScriptを用いて新しい画面を別表示しようとかんがえました。 ========================================= newWin = window.open("", "new", "width=500 height=300"); newWin.location = "test.php" ========================================= としました。 画面は表示できましたが、引数を持たせたいと考えています。 新しい画面にアクセスしたユーザの名前などを表示したい のですが、(※$nameにアクセスユーザの名前が入っている) どのようにすれば新しい画面にも前画面の情報を 継承したいのですが、どのように引数などを 設定すればいいのでしょうか? わかりづらい質問で申し訳ございませんが、 そのときはご質問ください。すぐ回答します。 では宜しくお願い致します。 m(_ _)m

  • window.openについて

    お世話様です。 早速本題なんですが画像のサムネイルページがあります。 そのページからサムネイルをクリックすると新しいウィンドウを開き元画像を表示するのですが、すべてサイズが違うためヘッダに <script language="JavaScript" type="text/javascript"> <!-- function openwin(url, w, h) { window.open(url,"","width=" + w + ",height=" + h); } // --> </script> と書いて、リンク<a>に onclick="openwin(this.href, 800, 600); return false;" とリンク1つづつに数値(幅,高さ)を変えながら入れて、 サムネイルが指定したサイズで新規ウィンドウとして開くところまでは至りました。 ですが、これでは、サムネイルをクリックする度に新規ウィンドウが開いてしまいます。ウィンドウの名前を指定しようと思い、 ヘッダを function openwin(url, name, w, h) { window.open(url, name, "width=" + w + ",height=" + h); とかえ、リンクを onclick="openwin(this.href, new, 800, 600); return false;" と変えました。 これでいけるかと思ったのですが、サムネイルと同じウィンドウに開かれてしまいます。さて、、、自分の力量はこんな程度で、もうわかりません。 どうすれば、アタらしいウィンドウの名前を指定出来るのか、 初歩的なところかもしれませんがご教授よろしくお願い致します。

  • JavaScriptのwindow.openでリファラーが取得できない。

    <SCRIPT language="JavaScript"> <!-- function OpenWin(){ window.open("sample.cgi,"new","width=500,height=250"); } // --> <A href="#" onClick="OpenWin()">オープン</a> 上のようにsample.htmlのページ内にwindow.openのJavaScriptを書いています。 sample.cgi内に$ENV{'HTTP_REFERER'}を埋め込んでいるのですがリファラーが取得できません。 window.openの場合はリファラーは取得できないのでしょうか?

    • ベストアンサー
    • CGI
  • window.openで同画面遷移しない

    window.openで別窓でウィンドウを開き、開いたウィンドウは親ウィンドウにあるリンク1、リンク2、リンク3をクリックすると別窓で開いたウィンドウが同画面遷移で変わるようにしたいのですが、IEで各リンクをクリックすると新規ウィンドウが立ち上がってしまいます。Firefoxでは問題ないのですが。 <head>~</head>内に以下のjavascriptを書きました。 <script type="text/javascript"> <!-- function winOPEN(URL,winName) { window.open(URL, 'window1', 'width=400, height=300, menubar=no, toolbar=no, scrollbars=yes'); } // --> </script> またリンクのhtmlは以下のようにしました。 <ul> <li><a onClick="winOPEN('URL','window1')" title="" href="#">リンク1</a></li> <li><a onClick="winOPEN('URL','window1')" title="" href="#">リンク2</a></li> <li><a onClick="winOPEN('URL','window1')" title="" href="#">リンク3</a></li> </ul> どこがいけないのでしょうか。教えてください。

  • document.clear()の使い方について

    はじめまして。 質問があります。 以下のコードは、作成されたウィンドウの文字列を削除することが できません。一体何が原因なのかがわかりません。どうかご教授 お願いします。 ---------------------------------------------------------------- <html> <head> <title>document.clear()の使用例</title> </head> <body> <script type="text/javascript"> <!-- document.write("document.clear()の使用例"); newWin = window.open("","test","width=400,height=100"); newWin.document.open(); newWin.document.write("新規に作られたウィンドウ"); newWin.document.close(); //--> </script> <form> <input type="button" value="ウィンドウの文字列を削除" onClick="newWin.document.clear()"> </form> </body> </html> ---------------------------------------------------------------- 以上です。

  • window.open [object]

    <A href="window.open('a.htm','test','width=100, width=200');">リンク</A> で子ウィンドウを開くと、親ウィンドウが[Object]とのみ書かれた画面になってしまうのですが、原因及び回避方法を教えてください。 宜しくお願い致します。

  • window.open()で幅指定の際、ウインドウサイズが大きすぎる

    以下のようなwindows.openに関するプログラムを作成し、実際に 子ウインドウを開いてみると、表示されるウインドウの横幅が、画面いっぱいよりわずかに大きくなってしまいます(画面解像度は1024*768) width=1024と記述しているので、横幅はぴったり画面サイズと同じ だと思っていたのですが、どこが間違えているのでしょうか? 不勉強で恐縮ですが、ご教示いただきたくお願いいたします。 <HTML> <HEAD> <SCRIPT LANGUAGE="JavaScript"> function dispw() { win01=window.open("h ttp://www .goo.ne.jp/","MENU","width=1024,height=680,top=0,left=0,status=yes"); } </SCRIPT> </HEAD> <BODY> <FORM> <INPUT TYPE="button" VALUE="子ウインドウを開く" onClick="dispw()"> </FORM> </BODY> </HTML>

  • window.openでタイトル名の指定

    window.openで開くウインドウのタイトルバーに指定文字列を入れたいのですが、できますでしょうか? ファイル(画像)を直リンクで開く為、そのパスが表示されてしまいます。 いろいろ検索して var w1 = ""; w1 = window.open(url , "hoge" , "width=640,height=180,scrollbars=yes,location=1"); w1.document.title = "test"; とかでできると書いてあったサイトもあったのですが私の場合どうもうまくいきません・・。 お願いいたします。

専門家に質問してみよう