• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:resizeTo を無効にする方法)

resizeTo を無効にする方法

leaz024の回答

  • ベストアンサー
  • leaz024
  • ベストアンサー率75% (398/526)
回答No.1

> ☆resize有効 > 「一度も画面の起動を行なっていない時」or > 「一度起動された画面がユーザ側で削除された時」 > ☆resize無効 > 「既に起動された画面が残っている時」 これを素直に実装してやればよいのでは? ■親HTML <HTML> <HEAD><TITLE>oya.html</TITLE> <SCRIPT language="JavaScript"><!-- var win = null; function subwin(a) {   if (!win || win.closed) {     win = open(a.href, a.target, "resizable=yes,scrollbars=yes");   }   win.focus();   return false; } //--></SCRIPT> </HEAD> <BODY> <A href="ko.html" target="KO" onClick="return subwin(this)">小窓open</A> </BODY> </HTML> ■子HTML <HTML> <HEAD><TITLE>ko.html</TITLE> <SCRIPT language="JavaScript"><!-- window.resizeTo(400,360); //--></SCRIPT> </HEAD> <BODY>KO</BODY> </HTML> 親HTML内の変数 win は、 ・一度も子画面を開いていない時 → null ・画面がユーザに消された時 → win.closed = true ・子画面が開いている時 → win.closed = false となるので、  !win   (分かりやすく書けば「win == null」) または  win.closed (分かりやすく書けば「win.closed == true」) の時だけ、子画面を open してやればよいのです。 子HTMLの方では、open された時だけ resizeTo が実行されます。 (win.closed == false の時は、フォーカスが当たるだけです。)

noname#1802
質問者

お礼

ありがとうございます。 自分で質問後にすぐ回答が解かってしまいました。 やはり一度言葉で書いてみるというのが解決策ですね。 if文に関しては回答頂いた通りです。 sizeの設定だけ子ウィンドウ側でなく 親ウィンドウ側から処理させていただきました。 ありがとうございました。

関連するQ&A

  • タイトルバーを非表示にしたい

    IEを使用して、デュアルディスプレイのコンテンツを制作しています。 メインウィンドウでは、IEの起動時に全画面表示の設定があるので全画面にできるのですが、サブ画面のウィンドウを全画面表示にすることができません。 そこで、ウィンドウのサイズをディスプレイより少し大きくし、擬似的に全画面表示にすることにしましたが、以下の問題が発生しました。 1.画面解像度以上のサイズにリサイズすると、IEで勝手に画面解像度サイズのウィンドウにしてしまう。 2.1を回避するために、ウィンドウ自体のサイズを極力広げたいのですが、タイトルバーのみ消すことができません。 JavaScriptのopenwindow時の設定もはじかれます。 ローカル環境で、特定のマシン台数のみ実現できればよいので、IEの設定やOSの設定などは変更可能です。 タイトルバーの消去か、セカンダリディスプレイでの全画面可に対するアドバイスをお願いします。 環境 OS:WindowsXP Home IE:Ver6

    • 締切済み
    • CSS
  • フレームページの画面サイズ設定

    トップ、メイン、アンダーって縦に3つに別れたフレームで画面サイズの設定をしたいのですが、どの様にすればよろしいでしょうか? また、WINとMACでサイズが違う様にしたいです。 下記まではできたのですが、ブラウザーを立ち上げてもサイズが設定できません。 <script type="text/javascript"> <!-- function test(){ if(navigator.platform=="MacPPC"){ window.resizeTo(500,500); }else{ window.resizeTo(750,600); } } //--> </script> <body bgcolor="#FFFFFF" text="#000000" onload="javascript: test();"> よろしくお願いします。

  • 別画面の表示方法について

    初めてご質問をさせていただきます。 当方は、ホームページビルダーでホームページを作成しておりますが、まだ初心者で、初歩的なことが分かりません。 ご質問させていただきたいのは、ホームページの作成において、ある画面から、 別の画面を新しい画面として(画面サイズを指定)呼び出す方法についてですが、 現状、リンク元の画面のターゲットを「新しい画面で開く」に指定し、 リンク先(新しく開く画面)において、JavaScriptを使って開いた時に画面をResizeするような方法をとっています。 しかし、この方法ですと、 1.新しい画面において、メニューバー等が表示されてしまうが、それらを表示させたくない。 2.(気のせいかもしれませんが)その後、関係ない新たな画面を開いた時に、画面のサイズがResizeされた大きさになってしまう。 という、2つの問題があり、困っています。 きっと、リンク元の画面において、JavaScriptで、window_openを使えば良さそうな気もしたのですが、初心者のため実際の記述方法が分かりません。 画面のイメージとしては、リンク元の画面に 「詳細はこちらをご覧ください」というテキストがあり、「こちら」の文字部分にリンクを貼って、 詳細表示画面を、サイズを指定し、メニューバー等を表示せずに、別画面として開く、ということになりますが、 JavaScriptの記述をどの位置に、どのように記述すれば良いのか、どなたか、教えていただけると助かります。 よろしくお願い致します。

  • 既に開かれているウィンドウのメニューバーなどのスタイル変更

    新しく開かれたウィンドウのサイズ変更、メニューバーなどをなくしたいのですが、どうすればよいですか? 問題は、あるところから飛ばされてきており、ページが既に開かれている状態なので、前のページでwindow.openなどのjavascriptが使えないことです。。。 ソースは現在、下記のような感じです <script language="JavaScript"><!-- resizeTo(500,300); function thisopen(){ open("index.html","_self","menubar=no,toolbar=no"); // --></script> <body onload="thisopen()"> 上のように、リサイズは出来ますが、メニューバーを消すことが出来ません。javascriptじゃなくてもいいのですが、ページが開かれたときに、1度だけリロードのような形でそのページを開きなおすのがいいのかとも思っています。 何か他の方法、ありませんでしょうか!?説明が足りませんかもしれませんが、どうぞよろしくお願いします。

  • 小窓自体でのツールバーの非表示

    小窓自体でウインドウのリサイズやツールバーの非表示が出来ないかと試行錯誤しております。 リサイズは <script LANGUAGE="JavaScript"> <!-- window.resizeTo(000,000); --> </script> で出来る事がわかりましたがツールバーの非表示を 小窓自体で出来るのかがどうしても解りません…。 子窓のリンク元のページからじゃないと出来ないのでしょうか?困っています。。ご回答して頂けると大変助かります!よろしくお願い致します。

  • ウィンドウを最大化で開く方法を教えてください。

    こんにちは。 以下の方法でモニタサイズにあわせてウィンドウを開くことはできたのですが・・・ ------------------------------ <html> <head> <title>ウィンドウサイズをモニタサイズに合わせる</title> <script Language="JavaScript"> <!-- moveTo(0,0); resizeTo(screen.width,screen.height); // --> </script> </head> <body> ウィンドウサイズをモニタサイズに合わせる </body> </html> ------------------------------ モニタのサイズに合わせるのではなくて、最大化の状態(ブラウザ右上のアイコンが「元のサイズに戻す」になる状態)で開くようにしたいのですが、そういう方法はありますか? できるだけシンプルなスクリプトでIE・NN両方に対応していれば・・・と思います。なお、「全画面表示」はしたくないので、お間違えのないようお願い致します。よろしくおねがいします。

  • ajaxのwindow.jpで、小窓表示後に小窓をリサイズする方法

    Ajaxのライブラリのprototype window classのwindow.jsを使っています。 小窓を開く際にウィンドウサイズが指定できるのですが、 小窓表示後に表示する内容にあわせて開かれた小窓をリサイズしたい のですが、方法が分かりません。 試しに開かれた小窓の方のhtml内で、resizeTo(w,h);を実行して みましたが、IE7ではリサイズされるのですが、firefox、operaでは リサイズされません。 対処法をご存知でしたらご教授いただけますか?

    • ベストアンサー
    • AJAX
  • ブラウザ起動時に、ウインドウサイズ一杯にFlashを表示したい

    ブラウザ起動時に、ウインドウサイズ一杯にFlashを表示したい AS3です。ブラウザ起動時に、 ウインドウサイズ一杯にFlashを表示したいのですが 上手くいかずに困っています。。 IE FireFox Safari Opera 上記の4ブラウザ全てに対応したいのですが、 現在私がやっている手法では、FireFoxにしか対応できておりません。 わたしの今のやり方は、 Flashサイズを縦横100%でパブリッシュして、 swfのスクリプトでは -------------------------------------------------------- var w:Number // ブラウザ起動時の横幅 var h:Number // ブラウザ起動時の高さ stage.addEventListener(Event.RESIZE, wr); function wr(e:Event):void{ w = stage.stageWidth; h = stage.stageHeight; stage.removeEventListener(Event.RESIZE, wr); } -------------------------------------------------------- この様に書いています。 FireFoxでは、 Flashサイズを縦横100%でパブリッシュされていた場合、 ブラウザ起動時のウインドウサイズに一度Flashサイズがリサイズされるので その時に自動的にEvent.RESIZEが実行されるようなので そこで初期サイズを取得できています。 (functionで、Event.RESIZEをremoveして  1回だけ、リサイズイベントが起きるようにして、  そこでブラウザ起動時のウインドウサイズを取得しています。) しかし、他のブラウザでは、 「ユーザーがウインドウをリサイズする」というアクションを起こさないと Event.RESIZEが実行されないようですので、 ブラウザ起動時にウインドウサイズ一杯にFlashを表示できません。 何か他の方法があるのでしょうか。。? 世の中によくある、ウインドウサイズ一杯のFlashサイトは どのようにして作られているのでしょうか。。? どなたかご存知の方いらっしゃいましたら どうかよろしくお願いいたします。

    • ベストアンサー
    • Flash
  • Excelでコントロールのサイズ変更を不可とする方法

    はじめまして、VBAでの開発に携わるようになって約1年の初心者です。 初めての質問になりますが、ご教授頂けますようお願い致します。 現在ユーザー向けに提供しているExcelVBAでの入力画面があります。 通常はユーザー側に「マクロを有効にする」を選択してもらっている為、 コントロールのリサイズをユーザーではできないようになっています。 ただ、ユーザーが間違えて「マクロを無効にする」を選択した場合、 コントロールのリサイズができてしまいます。 シートの保護もかけていますが、マクロ実行時のみ有効のようです。 又、VBAのコーディングでサイズを指定すれば マクロ無効時にリサイズしてしまっても、マクロ有効で開きなおせば直ると思うのですが、対象とするファイルもコントロールも多い為、なんとか設定で切り抜けられないか悩んでいます。 「マクロを無効にする」を選択した場合でも、配置したコントロールの リサイズができなくなるように制御することはできないでしょうか? 長くなりましたが、是非ご指導頂けますよう宜しくお願い致します。

  • ウインドウサイズの指定

    お世話になっております。 webページのウインドウサイズ指定をしたくて、 window.resizeTo・・でピクセル指定をしたのですが NetscapeとExplorerのサイズが全然違うんです。 両者とも、動作は確認できるのですが(バージョンも5.0ですし)、違う大きさにresizeしてしまうのです。 考えられる原因、または違う対処法等ありましたら教えてください。 よろしくお願いいたします。