18

以前は「BeautyTips」という名前のjQueryプラグインで作業していましたが、問題なく動作していました。しかし、IE 8をインストールしたので、IEにベクトルや画像などを描画させるには、Excanvasが必要なため、このプラグインは機能しなくなります。

新しいバージョンのExcanvasをダウンロードしようとしましたが、まったく機能しません...

4

7 に答える 7

16

IE8の新しい「標準」モードは、いくつかの非標準機能をオフにします。その中で、excanvasによって使用されるVML。IE7の「標準」モードに設定しただけなので、引き続き機能します。

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

イライラしますが、IE8によってもたらされる利点はわかりません。

于 2009-06-02T18:56:20.400 に答える
14

はい、IE8標準モードでexcanvasを動作させています(必要な使用法についてのみテストされています)。関数CanvasRenderingContext2D_で、次の行をコメントアウトしました。

//el.style.overflow = 'hidden';//fix IE8

ノードオブジェクトelの幅と高さは0pxx0pxであったため、オーバーフローをhiddenに設定しないと、レンダリングされたアイテムが表示されます。

必要な結果を得るために、 canvasPieTimerの作成順序を少し変更しました。これがお役に立てば幸いです。

于 2009-11-16T08:08:12.303 に答える
10

excanvasを使用してドキュメントを初期化する前に、canvas要素をドキュメントに追加してみてください。

var foo = document.getElementById("targetElementID");
var canvas = document.createElement('canvas');
canvas.setAttribute("width", 620);
canvas.setAttribute("height", 310);
canvas.setAttribute("class", "mapping");
foo.appendChild(canvas);
canvas = G_vmlCanvasManager.initElement(canvas);
于 2009-12-03T19:02:31.477 に答える
2

excanvas.jsの最新バージョンがインストールされていますか?(2009年3月にリリースされ、新しいGoogle Codeプロジェクトページでホストされています)

IE8でBeautyTipsプラグインを使用し、IE8ネイティブモードで動作するAFAIKを使用しました。

于 2009-06-02T22:05:00.487 に答える
1

最新のbtプラグインバージョンでは、この問題が修正されています。

于 2009-06-19T22:56:42.730 に答える
0

jqueryを使用してHTMLの文字列としてcanvasタグを追加しても、新しいバージョンのexcanvasでは機能しません。最初にdocument.createElement('canvas')を使用する必要があります。

于 2010-07-20T18:38:25.570 に答える
0

誰かがまだこの問題を抱えている場合:BeautyTipsバージョン0.9.5はこの問題を修正します。ただし、以前のバージョンを使用する必要がある場合(新しいバージョンでは、私のページでヒントが途中で閉じられるという問題が発生したため)、530行目を次の行に置き換える必要があります。

var canvas = document.createElement('canvas');  
$(canvas).attr('width', (numb($text.btOuterWidth(true)) + opts.strokeWidth*2)).attr('height', (numb($text.outerHeight(true)) + opts.strokeWidth*2)).appendTo($box).css({position: 'absolute', top: $text.btPosition().top, left: $text.btPosition().left, zIndex: opts.boxzIndex});

それが役に立てば幸い。

于 2011-08-24T12:08:02.973 に答える