javascript - 光滑的 slider 在 jQuery 选项卡中不起作用

标签 javascript jquery html css tabs

我有一个旋转木马在第一个选项卡中使用光滑的 slider 工作正常,但是当我转到第二个选项卡时, slider 没有加载,如果我默认打开第二个选项卡然后不加载到第二个选项卡而不是第一个选项卡然后,我认为光滑的 slider 代码已初始化,然后在更改选项卡时不会再次初始化,但不确定如何处理此问题,有人可以建议吗?

这是工作 JSfiddle example

标签的 jQuery 如下:

$('ul.tabs li').click(function(){
    var tab_id = $(this).attr('data-tab');

    $('ul.tabs li').removeClass('current');
    $('.tab-content').removeClass('current');

    $(this).addClass('current');
    $("#"+tab_id).addClass('current');
});
if (window.location.hash.length > 0) {
  var hash_str= window.location.hash.split("#")[1];
  $('.tab-link[data-tab=' + hash_str + ']').click();
}

提前致谢!

最佳答案

这背后的原因是,slick 拒绝在非事件选项卡上正确初始化 - 因为它们(非事件选项卡)由 display:none css 属性组成。因此,请尝试按如下方式设置隐藏标签的 CSS:

{
  display: block;
  height: 0;
  overflow: hidden;
}

然后,当隐藏的选项卡变为事件状态时,您还需要将 height 属性重置回其大小。为此,您只需执行以下操作:

{
  height: auto;
}

关于javascript - 光滑的 slider 在 jQuery 选项卡中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42333156/

相关文章:

html - 如何设置bootstrap div默认不折叠

javascript - 用于在移动设备中编辑表格单元格中的数据的插件或任何东西?

javascript - ng-mouseover/mouseleave 为每个列表项设置动画

数字的 javascript 正则表达式现在接受点和斜杠

javascript - 如何在 MVC 4 中设置时间选择器

javascript - 在鼠标悬停时将 auto 更改为 false

javascript - 在javascript中添加div?

html - css 后代选择器追加样式,子元素除外

php - jQuery POST 值到 PHP 脚本

javascript - 将 MUI DatePicker 与 yup 和 react-hook-form 一起使用 - 错误 Prop 无法按预期工作