MozillaZine.jp フォーラム
https://forums.mozillazine.jp/

Firefox11
https://forums.mozillazine.jp/viewtopic.php?f=2&t=12842
ページ 11

作成者:  モモ [ 2012年3月28日(水) 16:00 ]
記事の件名:  Firefox11

Firefox11を使いジャバスクリプトでローテーションする複数のバナーのGIFのアニメーションが2回目から動きません。ローテーションは動いていますが、GIFアニメーションが動きません。リフレシュすると1回だけGIFアニメーションが動きますが連続しません。今までのバージョンやEIでは働いていました、どうしたら直せますか?
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ローテーションbanner</title>
<script type="text/javascript">
<!--
var sec = 8; //表示秒数

// 画像の名前
var image = new Array();
image[0] = '01.gif';
image[1] = '02.gif';
image[2] = '03.gif';


// リンク先
var link = new Array();
link[0] = 'http://www~01.html';
link[1] = 'http://www~02.html';
link[2] = 'http://www~03.html';

var number = 3

function loadImage(name){
if (document.images){
number = name;
document.images['slide'].src = image[name];
return false;
}
return true;
}

function showPicture(){
if (document.images){
nextSlide();
}
return false;
}

function nextSlide(){
number++;
if (number >= image.length) number = 0;
loadImage(number);
timeout = setTimeout('nextSlide()', sec*1000);
}

function gotolink(){
window.open(link[number]);

}
//-->

</script>

</head>

<body>

<script language="JavaScript" type="text/javascript">
<!--
document.write('<a href="#" onclick="gotolink();">');
document.write('<img src="' + image[number] + '" name="slide" border="0">');
document.write('</a>');
showPicture();
//-->
</script>

</body>
</html>

作成者:  偶然的通行人 [ 2012年3月30日(金) 08:30 ]
記事の件名:  Re: Firefox11 > GIF アニメーションが止まる

※質問するときは、フォーラムの利用に関するご案内 、とりわけ 質問するときは に目を通し、Firefox のバージョンだけでなく OS の種類やバージョンといった使用環境についての基礎情報を書き添えることをお勧めします。

解決策ではなく当方で試した結果とその考察ですが......。

結論からいうと、Windows XP SP3 上の Firefox 11.0 で再現しました。
ただし、10.0.3 ESR と 3.6.28 では再現しませんでした。

【テスト条件】
― ご提示のソースを記述した HTML ファイルと、ソースに対応するよう手持ちの適当な Animated GIF ファイル 3 つを組み合わせ、ローカル上で実行しました。
― GIF ファイル自体のアニメーションは繰り返し(ループ)回数が "無限" となっているものです。
― Firefox の image.animation_mode の値はデフォルトの normal で、画像が指定しているループ回数に従う設定のままです。
― Firefox はセーフモードで起動しました。もちろん、JavaScript に対する制約は加えておらず、Firefox のデフォルト設定です。

【動作と確認】
― HTML ファイルを Firefox に読み込むと、JavaScript による画像の切り替えは 8 秒ごとに 3 つの画像が順次切り替わりますが、2 順目以降は各画像がアニメーションの動作をしなくなり、ただの静止画になります。
― 止まった GIF 画像に対し [右クリック] -> [画像だけを表示] にすると、画像だけが表示されアニメーションが動きます。
― [Web コンソール] で確認すると、8 秒ごとに 01.gif、02.gif、03.gif の 3 つが順次読み込まれていることを示しています。

【比較】
― 定期的に画像を切り替える JavaScript を別ソースで書き、かつ何点かの GIF ファイルを別のものに差し替えてみましたが、GIF のアニメーション動作が途中で止まるのは同じでした。
― 上述の【テスト条件】とまったく同じ条件で 10.0.3 ESR と 3.6.28 の動作を試したところ、JavaScript による 3 つの画像の順次切り替えと、個々の GIF ファイルのアニメーションは問題なく動作し続けました。

【考察】
ぼくの能力では詳細はわかりませんが、なんとなく Firefox 11.0 の不具合っぽい気がします。
12 Beta 、13 Aurora 、14 Nightly などでは試してませんし、Bugzilla の検索もしていませんから、現象の上っ面をなぞっただけの不十分なテストに過ぎませんけど、再現性はあるように思います。
キャッシュまわりの取り扱いに問題があるのか、GIF アニメーションの描画(フレームの連続描画)に問題があるのか、専門的なことはわかりかねますが、10.0 系や 3.6 系では起こらない点を考慮すると、11.0 の新機能、仕様変更にからんで紛れ込んだバグである可能性も考えられるんじゃないでしょうか。

単なる追試報告で申し訳ないですけど以上です。役に立たない話だったらすみません。
詳しい知識のあるユーザーさんからフォローしていただければ幸いです。

作成者:  モモ [ 2012年3月31日(土) 03:02 ]
記事の件名:  Re: Firefox11

偶然的通行人さん
色々試してくださって本当にありがとうございます。
結果は全くその通りです。
私も色々試しましたがFirefox11の問題のようです。
ただ私のコンピューター環境(OSはWINDOWS XP  PROFESSIONAL)の問題だけではなく、
ウエブサイトを見ている(このバナーのある)Firefox11を使っている方々が同じ問題を持ちます。
他のブラウザやFirefox11以前は問題なく動いていました。
本当に困っています。
どうか宜しくお願いします。

作成者:  aides [ 2012年3月31日(土) 22:48 ]
記事の件名:  Re: Firefox11

Firefoxの場合Animated Gifファイルの問題はjavascriptからの読み込みに関わらず以前から存在してました。
Minefield(現在のNightlyの前身)や現行のNightlyの過去のバージョンでも再現し、修正されては発生すると云うループを繰り返してる模様です。
根本的な解決や解決に至る助言では無いのですが、一応報告と云う事で。

ページ 11 All times are UTC + 9 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/