3

プラグインを使用しjqplotてサイトにゲージを表示しています。これは FF/Safari/Chrome で完全にexcanvas動作しますが、IE8 で実行するには使用する必要があります。

問題は、ゲージが動的に作成されるため、値が渡さreplot()れ、ゲージ上の位置に「針」を配置する関数が必要になることです。replot()ただし、IE でor関数を使用するredraw()と、軸はレンダリングされますが、実際のゲージは完全に間違った場所に表示されます (要素内のゲージの一番上の角しか見えません)。

私はIE8にIE7をエミュレートすることを強制することを読んだ

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 

この問題を解決できますが、出力にはまったく影響しませんでした。

他に含める必要がある場合は、ただ言ってください。

4

3 に答える 3

2

私は、IE8 の顧客 (企業ネットワーク) を特に対象とするプログラムの 1 つに JQPLot を少し使用しています。追加のプラグインを追加したときに、多くの異常が発生しました。JQPlotで遭遇したいくつかの奇妙な点を解決するのに役立ったので、最初にJQPlotプラグインを削除することから始めます。

また、CSS の問題については、開発者ツールよりも firebug lite の方が高速であることがわかりました。これは単なる CSS の問題のようです。最初にその要素を調べて、どの CSS が適用/オーバーライドされているかを確認すると役立ちます。IE CSS の条件付きhttp://www.quirksmode.org/css/condcom.htmlを追加できる場合があります。最後に、DOCTYPE は、IE がコンテンツをレンダリングする方法に大きな違いをもたらします: http://www.quirksmode.org/css/quirksmode.html

上記のすべてが機能しない場合は、圧縮されていない JS をロードし、必要な関数で中断するだけで、いくつかの JQPlot の問題を解決しました。IE 開発者ツールを使用している場合、一般的な throw('fail') をブレークに与えるだけで、IE 開発者ツールの JS ブレークポイント システムを処理するよりもはるかに高速です。

于 2011-08-25T12:03:01.257 に答える
2
  1. jQuery の最新バージョンを使用していることを確認してください (こちらを参照)。

  2. .Ready 関数を使用して jPlot を初期化していることを確認してください (こちらを参照)。 $(document).ready(function() {

    $.jqplot(...init options...);

    });

  3. jquery.jqplot.css を必ず含めてください (ここあたり)

  4. 「バイナリおよびスクリプトの動作」と呼ばれる IE8 のカスタム セキュリティ設定を無効にします (こちらを参照) 。

最後に、それはバグである可能性があります。問題をここに投稿してみてください。

この時点で、IE8/9 の場合、jqPlot はかなりバグがあるようです。彼らのサイトを検索して、解決策があるかどうかを確認してみてください。

于 2011-08-22T18:00:32.970 に答える
1

使用してみてください:

<meta http-equiv="X-UA-Compatible" content="IE=8" /> 

私はすでにIE8を使用していましたが、うまくいきました

于 2012-06-05T21:21:41.430 に答える