2

http://jsfiddle.net/xwF6E/14/

上記は、作成しようとしているアニメーションの JSfiddle です。Chrome では 100% 正常に動作しますが、他のブラウザーではさまざまな問題が発生します。

Firefox ではアニメーションがレンダリングされないようです。Mozilla Dev Network のドキュメント @ https://developer.mozilla.org/en-US/docs/DOM/window.requestAnimationFrameに従って、クロス ブラウザ サポートを追加したと思いますが、おそらく何か間違ったことをしているのでしょう。

IE(少なくとも8 + 10)では、アニメーションも放射状グラデーションもレンダリングしません(誰かが助けることができる場合の副次的な問題でもあります)。

IE では、このコード行で IndexSizeError エラーが発生します

var imageData = context.createImageData(context.canvas.width, context.canvas.height);

しかし、それが具体的に何を意味するのかわかりません。そのエラー/その方法についてはあまり見つかりません。

誰でも私を啓発できますか?

乾杯

4

1 に答える 1

0

もうお分かりだと思いますが、興味のある方は、ウィンドウ サイズを取得しようとしている次のコードが原因です。

context.canvas.width = document.width;
context.canvas.height = document.height;

次のようなことをもっとやりたいと思うでしょう:

context.canvas.width = document.body.clientWidth;
context.canvas.height = document.body.clientHeight;

ただし、実際にはそれよりも少し複雑になる可能性があります。ウィンドウの高さと幅を見つける方法の詳細については、 http ://www.howtocreate.co.uk/tutorials/javascript/browserwindow を参照してください。

変更されたフィドルは次のとおりです: http://jsfiddle.net/shaunwest/MALN2/

于 2013-07-17T02:34:56.497 に答える