• ベストアンサー

JavaScriptとアニメーションgifの関係(?)

初心者なので予めご了承下さい(笑)。 function OpenWin(){ win=window.open("○○.htm","new","scrollbars=yes"); って言うのをコピってきて、リンク先をスクロールバーのみのウィンドウで開かせる(?)ってのを作ってみました。 結果正常に窓は開くのですが、なぜがリンク元のページに張られている アニメーションgifが新しい窓を開いた瞬間に止まってしまうのです。 これは仕方ないことなのでしょうか?

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

  • ベストアンサー
  • tasahamu
  • ベストアンサー率50% (3/6)
回答No.2

私の環境で確認してみた所... 普通に JavaScript で window.open() を使用する限り、 「リンク元に張られているアニメーションgifが止まってしまう」 事はなかったです。 あくまでも私の推測ですが... こんな感じ <A HREF="javascript:OpenWin()"> で、 リンクを張って使用されているのなら、確かに止まると思います。 そこで、この場合と仮定して以下に説明します。 あくまでも私の想像なのですが... 本来、HREF="" は次のリンク先を指定する所なので、 ブラウザ内の処理としては既に元のページは終了しており、 アニメーションgifも止まるのではないでしょうか。 そこで、いくつか対策を作ってみました。 私の環境(IE4、IE5、NN4.7)で確認した限りでは、 どれもアニメーションgifは止まりませんでした。 <A HREF="javascript:OpenWin();location.reload()"> <A HREF="javascript:OpenWin();history.go(0)"> IE3 や NN2 でもきっとOKなのではないでしょうか? しかし、onload 先が指定されているページの場合は、 内容によっては無限ループになってしまいます。 <A HREF="#" ONCLICK="OpenWin()"> これが一番良いのではないでしょうか? でも古いブラウザでOKかどうかは調べていません。 これを読んでる皆さん!!どうでしょう... <A ONCLICK="OpenWin()"> これは NN では動作しない上、オススメしません。

sumichan7878
質問者

お礼

ご回答ありがとうございました! 確かに私もwindow.open()ならアニメgifは止まりませんでした。 しかし、<A HREF="javascript:OpenWin()">は止まります。 そこでご回答の通りやってみました。 <A HREF="#" ONCLICK="OpenWin()">の一番下の出来ました! 上の二つは、理想通りに動くことは動くのですが、なぜか砂時計が出続けます。 何はともあれこれで理想通りになりました。 本当にありがとうございました!

その他の回答 (1)

  • Atalia
  • ベストアンサー率38% (48/124)
回答No.1

新しい窓が開いたことで、古い窓がアクティブウィンドウじゃなくなってアニメーションが停止した(アニメーションの書き換えが行われなくなった)のだと思います。 仕方ない事と言えば仕方ないことですね。 アクティブウインドウじゃなくても書き換えを続けるようにすれば...っちゅーのはWeb側から出来ることとは思えませんし。 質問とは関係ないですけど、(笑)を付ける場所は考えた方がいいですよ。 適当に付けてるといらぬトラブルを招きますから...。 「初心者」と「ガキ」は違いますからね。

sumichan7878
質問者

お礼

ご回答ありがとうございます。 やっぱり仕方ないことでしたか。 目をつむるしか方法はなさそうですね。 (笑)に関して・・・すいません。こういうことまでアドバイスいただいて。 確かに適当につけてました。 自分から質問しておいて(笑)はないですよね。大変失礼致しました。 また何かありましたらよろしくお願いします。

関連するQ&A

  • Javascriptで開いたWindowのスクロール

    <SCRIPT language="JavaScript"><!-- function openWin2() { window.open("http://www.OOOO/hanbai.htm","通信販売法","width=636,height=250,menubar=no,location=no,left=10,top=30") } // --></SCRIPT> <SCRIPT language="JavaScript"><!-- function openWin1() { window.open("http://www.OOOO/souryou.htm","送料について","width=579,height=240,scrollbars=no,location=no,menubar=no,left=10,top=30") } // --></SCRIPT> 上記の文で、「送料について」はスクロールバーがなくて OKなのですが、 「通信販売法」は、スクロールバーを出したいのですが、 上の文では、スクロールバーは出てきません。 (表示サイズで途切れてしまう) どう直せば、スクロールバーが出てきますでしょうか??

  • javascriptでのポップアップウィンドウが開かなくて困っています><

    初歩的な質問ですいません。 <script language="JavaScript"> <!-- function OpenWin(){ win=window.open("sample.html","new","width=100,height=100"); } //--> </script> <a href="javascript:OpenWin()"><img src="img/1.jpg" width="60" height="60" onClick="MM_openBrWindow('sample.html','sample','scrollbars=yes,width=460,height=460')" border="0"></a> 上のスクリプトで下のリンクで開こうとする時に、 どうしても開けません。>< どうしてなのでしょうか!? どこかが間違えているのでしょうか!? 誰か助けていただけませんでしょうか;><;;

  • ウインドウを開く方法

    質問ですが、javascriptで function OpenWinsea(){ win=window.open("hoge.php","new","scrollbars=yes,resizable=yes"); } とすると、スクロールバーとサイズ変更可能なウインドウが出てきますが、この方法のほかに新しいウインドウでスクロールバーとサイズ変更可能なウインドウを開く方法はないんでしょうか?cgi/php/html/などどんな方法でもかまいません。

  • 重い処理中のアニメーションgifについて

    お世話になります。 javascript で重い処理中のプログレス(アニメーションgif)表示について教えてください。 やりたいことは以下です。 ==================================== 1.重い処理の前にプログレス(アニメーションgif)表示 2.重い処理開始 3.プログレス(アニメーションgif)非表示 [sample.html] <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script type="text/javascript"> $(function() { $('#btn').click(function() { progressStart(); // プログレス(アニメーションgif)表示 func1(); // 重い処理開始 progressEnd(); // プログレス(アニメーションgif)非表示 }); }); /** * プログレス(アニメーションgif)表示 */ function progressStart() { $('#prog').show(); } /** * プログレス(アニメーションgif)非表示 */ function progressEnd() { $('#prog').hide(); } /** * 重い処理(とりあえず5秒) */ function func1() { var T = 5; //T秒待つ var d1 = new Date().getTime(); var d2 = new Date().getTime(); while( d2 < d1+1000*T ){ d2=new Date().getTime(); } return; } </script> </head> <body> <form> <input type="button" id="btn" value="開始" /> <div id="result"></div> <img id="prog" src="img/loadinfo.gif" alt="" style="display:none;" /> </form> </body> </html> ==================================== 上記コードで試したのですが、 重い処理中はプログレス(アニメーションgif)が動かず固まったままです。。。 重い処理中もプログレス(アニメーションgif)を 動いたままにすることは可能なのでしょうか? どなたかご教授いただければと思います。よろしくお願いいたします。

  • GIFアニメの動きが止まってしまう!

    こんにちは。分かる方がいらっしゃいましたら教えてください。 同一ページ内に「GIFアニメ」と「小ウインドウを開くリンクボタン」を設置していて 「小ウインドウを開くリンクボタン」を押すと「GIFアニメ」動きが止まってしまい ます。小ウインドウなので、内容を読んだらクローズしてもとのページを閲覧する ような形なのでアニメーションが止まってしまうと困ります。 どうしたらよいでしょうか? とりあえず現状動作確認できているのは以下の通りです。 ---------------------------------------------------------------------- 正常 WIN : NN6.2    MAC : NN6.2 IE5.0以降 動作不良 WIN : IE5.5 NN4.7      MAC : NN4.7 ---------------------------------------------------------------------- ソースとしては ---------------------------------------------------------------------- ◇ヘッダー部◇ <SCRIPT language="JavaScript"> <!-- function openWin(url) { window.open(url,’details’,’width=320,height=415,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes’); } //--> </SCRIPT> ◇画像部分◇ <A href="javascript:openWin(’info.htm’)" onMouseOver="swtch(17,button_09);" onMouseOut="swtch(16,button_09);" target="_self"><IMG src="image/index/button_09.gif" width="160" height="24" name="button_09" border="0" alt="問合せ information"></A> ---------------------------------------------------------------------- という感じです。 よろしくお願いいたします。

  • エラー

    JAVA SCRIPTでWINDOWが開くように以下のようにヘッダに入力しました。 <SCRIPT language="JavaScript"> <!-- function OpenWin1(){ window.open("http://www.******.htm","new_win","toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=no,Width=500,Height=700"); win.moveTo(0,0); } //--> </SCRIPT> それをブラウザから見ると、ウインドウを開いた後にもとのウインドウの下に 「ページでエラーが発生しました」 とでてしまいます これは、構文が間違っているのでしょうか? それともほかに何か原因があるのでしょうか? よろしくおねがいします

  • JavaScriptで新しいウインドウを立ち上げたときにメインウインドウがおかしい

    メインウインドウの文章中の下の方にリンクをはって、そこからサブウインドウを開いています。実は少し前にatsuotaさんにご回答いただいたこの方法を利用しているのですが <!-- function openWin1() { window.open("sub1.html","sub1","width=320,height=240"); } function openWin2() { window.open("sub2.html","sub2","width=320,height=240"); } --> <a href="" onClick="openWin1()">sample1</a> <a href="" onClick="openWin2()">sample2</a> このsample1とか2がスクロールしなくてもよいくらいの位置にあればいいのですが、スクロールしているところで配置してあると、メインウインドウが毎回トップのあたりにずれてしまうのです。(特別な制御はしていないはずなのですが・・・) おわかりになる方がいらっしゃいましたら教えてください。

  • window.openでフルスクリーン表示

    リンクは別ウインドウをフルスクリーンでスクロールバー非表示&ツールバー隠す(hidden)で開こうとしました。単純に、 window.open("a.htm","","fullscreen=yes,menubar=hidden,scrollbars=no"); でうまくいくと思ったのですが、うまくいきません。 解決法をご存知の方がいましたら、よろしくお願いします。 ちなみにブラウザは、IEを使用しています。

  • ウィンドウオープンに関する初歩的質問ですが

    ウィンドウオープンに関する初歩的質問ですが html側で <a href="javascript:OpenWin('new.html',100,100)">ウィンドウオープン</a> と記述して javascript側で function OpenWin(url,Width,Height){ win=window.open(url,"new","width=Width,height=Height,resizable=1,scrollbars=1"); } と記述してあります。 javascript:OpenWin('new.html',100,100)の部分を javascript:OpenWin('new.html',300,500)としてリンクをクリックしてもウィンドウの大きさが変化しません。 文法上どこか間違っていますでしょうか? よろしくご教授承りたく存じます。

  • window.openでフルスクリーン表示&スクロールバー非表示

     window.openを使って、別ウインドウをフルスクリーンでスクロールバー非表示で開こうとしました。単純に、 window.open("a.htm","","fullscreen=yes,scrollbars=no"); でうまくいくと思ったのですが、うまくいきません。  解決法をご存知の方がいましたら、よろしくお願いします。  ちなみにブラウザは、IEを使用しています。