getComputedTextLength() を使用する単体テストを作成しており、IE を除くすべてのブラウザーでテスト パスを使用しています (IE10 を使用しています)。
何か案は?
これは私が得るエラーです:Unexpected call to method or property access.
getComputedTextLength() を使用する単体テストを作成しており、IE を除くすべてのブラウザーでテスト パスを使用しています (IE10 を使用しています)。
何か案は?
これは私が得るエラーです:Unexpected call to method or property access.
これは、要素が可視 DOM にない場合に発生します。try/catch を使用する必要がないように、事前にチェックを行うことができます。
if(!document.body.contains(self.node())) return;
私の限られた調査では、実際の要素が表示されていない場合、IE11 (IE10 と仮定します) がこのエラーをスローするようです。この問題を回避するために私がした
var a;
try{
a=textElement_.getComputedTextLength();
}catch(e){
a=textElement_.childNodes[0].length*8; //I used 8 as a width, but you should experiment
}
これが役立つことを願っています。要素が表示されると、通常は getComputedTextLength を使用するようです。
iframe 内の SVG で「el.getSubStringLength()」を呼び出した場合。次に、この iframe を更新すると、IE もこれについて文句を言いますが、ページ全体を更新すると問題なく動作します。
これは、テキスト要素が既に DOM にあり、これらの更新ワーカーの間にバグがあるためだと思います。