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 当前是否用作 jQuery UI 小部件(这可能是您要问的,虽然我不完全确定),您可以检查 div 是否具有“ui-widget”类。

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

每个 jQuery UI 小部件都有这个类,我相信大多数实现良好的第三方小部件也使用这个类(jQuery UI 的 CSS 框架的一部分)。

于 2012-01-27T21:09:56.280 回答
0

检查一个小部件是否被分配给一个标签的标准方法,而不检查标签是否有一个小部件类,是......

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

如果您想在某些设备上分配不同的小部件,或者在调用小部件方法等之前检查小部件是否已初始化,这是一个有用的例程。

所有 ui-widget 都会将根小部件对象存储在分配给标签的数据对象中。这也是一个用于访问私有小部件的方法。

于 2013-04-04T11:53:53.377 回答