0

要素が画像かjQueryを使用していないかを判断しようとしています。これは を使用して簡単に実行できるはずです$('selector').is('img')が、うまくいきません。これは、Chrome のウォッチ式コンソールのスクリーンショットです。is() 関数が失敗する理由がわかりません。デバッガーは、要素が HTMLImageElement であることを示しています。助言がありますか?

var selectedElement = ckEditor.getSelection().getSelectedElement();
var $element = $(selectedElement);
var isImage = $element.is('img');

ここに画像の説明を入力

4

1 に答える 1

4

ドキュメントには、ネイティブ DOM 要素ではなく.getSelectedElement()インスタンスを返すと記載されています。CKEDITOR.dom.elementそのため、jQuery を呼び出すときは、うまく動作しない別のラッパーをラップしていることになります。jQuery は、これらの CKEditor オブジェクトを処理する方法を知りません。ドキュメントには、$プロパティがネイティブ DOM 要素であることも記載されているため、次のようになります。

var $element = $(selectedElement.$);
于 2012-11-09T19:30:05.753 に答える