如何检查 div 是否有小部件?例如。
如果我们向 div 添加一个类,我们可以检查使用.hasClass像这样,有没有办法找到小部件是否存在?
如何检查 div 是否有小部件?例如。
如果我们向 div 添加一个类,我们可以检查使用.hasClass像这样,有没有办法找到小部件是否存在?
你的问题很难理解。由于您没有提供有关自定义小部件的代码或解释,因此也很难回答。根据您有限的信息,这是我能做的最好的......
为您的小部件分配一个 CSS 类(例如clsWidget
)。如果小部件总是有这个clsWidget
类,你可以像这样检查它的存在:
if($("[DivThatMightContainWidgetSelector]").find(".clsWidget").length > 0) {
//Div contains widget
}
else {
//Div does not contain widget
}
如果您想知道 div 当前是否用作 jQuery UI 小部件(这可能是您要问的,虽然我不完全确定),您可以检查 div 是否具有“ui-widget”类。
$("yourDivSelector").hasClass("ui-widget")
每个 jQuery UI 小部件都有这个类,我相信大多数实现良好的第三方小部件也使用这个类(jQuery UI 的 CSS 框架的一部分)。
检查一个小部件是否被分配给一个标签的标准方法,而不检查标签是否有一个小部件类,是......
if ( !($("#myInput").data( "ui-fooWidget" ) )
< widgetNotFound >
else
< widgetFound >
如果您想在某些设备上分配不同的小部件,或者在调用小部件方法等之前检查小部件是否已初始化,这是一个有用的例程。
所有 ui-widget 都会将根小部件对象存储在分配给标签的数据对象中。这也是一个用于访问私有小部件的方法。