【问题标题】:OwlCarousel 2 - reinit after page orientation changeOwlCarousel 2 - 页面方向更改后重新初始化
【发布时间】:2014-12-02 01:49:36
【问题描述】:

我正在使用 OwlCarousel 2 测试版作为我网站的移动版。显示的图像数量取决于屏幕宽度

var owl = $("#owl-demo");
  if (screen.availWidth < $(window).width()) {
    var sWidth = screen.availWidth / 300;
  } else {
    var sWidth = $(window).width() / 300;
  }
  var qua = Math.floor(sWidth);
  owl.owlCarousel({
    items : qua,
    autoWidth: false,
    autoHeight: false,
    nav: true,
    navText: ['<img src=\"/images/larrow.png\" width=\"24\">','<img src=\"/images/rarrow.png\" width=\"24\">'],
    pagination: false
  });

页面方向改变后,我想用新的qua值重新初始化owlCarousel。

试过了

owl.trigger('destroy.owl');

然后

owl.owlCarousel({
      items : qua
...
})

方向更改(或窗口宽度更改)后,它会破坏页面布局。这是 JSFiddle:http://jsfiddle.net/wgj7y86y/1/

任何想法,如何解决这个问题?

【问题讨论】:

    标签: jquery owl-carousel


    【解决方案1】:

    我对 OwlCarousel 2 不熟悉,但是 jQuery 可以使用 .resize() 方法来做到这一点,该方法是 .on('resize', handler) 的快捷方式。它会监听浏览器大小的变化,然后触发一个函数来响应调整大小,这可以帮助您处理您所体验的布局的任何变化。

    jQuery API resize()

    【讨论】:

    • 调整大小工作正常。问题在于 owl-carousel 插件重新加载
    • @George 显然这是 owl-carousel 的一个已知问题。在另一个线程中,这被建议作为解决方法的代码。由于我不使用 owl-carousel 我会声称它对我有用,但它可能值得一看。
    • @George 您也可以考虑查找 owl-carousel 的最新版本并使用它,看来此错误可能已在以后的版本中修复,但又只是另一种故障排除方法。跨度>
    • 唯一的解决方案 - 它的页面重新加载:(也许在下一个版本中这个错误将被修复......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-01
    相关资源
    最近更新 更多