Select 第一个可见标签索引

Select first visible tab index

我有一个个性化的选项卡指令,将活动选项卡设置为第一个元素:

    jQuery($element).data(`kendoTabStrip`).select(0);

但是现在指令接收一个隐藏的 属性,当不存在时设置 ng-show=false

  Reflect.defineProperty($scope.tabs.tabs[name], `liElement`, {
            enumerable: false,
            writable: false,
            value: angular.element(`<li ng-show="false">{{tabs.tabs[\'' + name + '\'].title}}</li>`),
  });

使第一个可见元素可能与第一个选择的元素不同,我尝试了

const index = $( "li" ).index($("li:visible:first"));
jQuery($element).data(`kendoTabStrip`).select(index);

但是索引总是returns0,如何根据ng-hide获取索引属性?

试试这个:

const index = $( "li" ).index($("li[ng-show='true']:first"));

ng-show 或 ng-hide 不会更改 "visibility" 属性。它隐藏基于 "display" 属性

的元素