2

divにウィジェットがあるかどうかを確認するにはどうすればよいですか?たとえば。

divにクラスを追加すると、このように.hasClassを使用して、ウィジェットが存在するかどうかを確認する方法はありますか?

4

3 に答える 3

3

あなたの質問は理解するのが非常に難しいです。カスタムウィジェットに関するコードや説明を提供していないため、回答するのも非常に困難です。あなたの限られた情報に基づいて、これは私ができる最善のことです...

CSSクラスをウィジェットに割り当てます(例clsWidget)。ウィジェットに常にclsWidgetクラスがある場合は、次のようにその存在を確認できます。

if($("[DivThatMightContainWidgetSelector]").find(".clsWidget").length > 0) {
    //Div contains widget
}
else {
    //Div does not contain widget
}
于 2012-01-27T13:15:10.570 に答える
2

divが現在jQueryUIウィジェットとして使用されているかどうかを知りたい場合(完全にはわかりませんが、これはあなたが求めているものかもしれません)、divに「ui-widget」クラスがあるかどうかを確認できます。

$("yourDivSelector").hasClass("ui-widget")

すべてのjQueryUIウィジェットにはこのクラスがあり、適切に実装されたサードパーティウィジェットのほとんどもこのクラス(jQuery UIのCSSフレームワークの一部)を使用していると思います。

于 2012-01-27T21:09:56.280 に答える
0

タグにウィジェットクラスがあるかどうかをチェックせずに、ウィジェットがタグに割り当てられているかどうかをチェックする標準的な方法は...

if ( !($("#myInput").data( "ui-fooWidget" ) )
   < widgetNotFound >
else
   < widgetFound >

特定のデバイスに別のウィジェットを割り当てたい場合、またはウィジェットメソッドなどを呼び出す前にウィジェットが初期化されているかどうかを確認する場合に便利なルーチンです。

すべてのUIウィジェットは、タグに割り当てられたデータオブジェクトにルートウィジェットオブジェクトを格納します。これは、プライベートウィジェットメソッドにアクセスするためにも使用されます。

于 2013-04-04T11:53:53.377 に答える