尝试使用jquery循环幻灯片显示窗口大小调整

前端之家收集整理的这篇文章主要介绍了尝试使用jquery循环幻灯片显示窗口大小调整前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试在带有jQuery循环幻灯片页面上运行JavaScript窗口调整大小脚本但是我遇到了一些我似乎无法解决错误.它会在页面加载时调整第一个图像的大小,但会忘记后续幻灯片的新高度/宽度属性.我可以在使用jQuery之前和之后再次设置这些,但在调整大小之前,图像总是以全尺寸闪烁一小段时间.

jQuery.cycle是否将幻灯片调整为原始大小?如果是这样,我该怎么做呢?

$(document).ready(function () {
  $('.slideshow').cycle({
    fx: 'fade',speed: 200,timeout: 1000,pause: 1,before: function (currSlideElement,nextSlideElement,options,forwardFlag) {
      resize();
    },after: function (currSlideElement,forwardFlag) {
      resize();
    }
  });

  $('.slideshow').find('img').css("height","0");
  $('#image').hide().idle(1000).fadeIn();
  resize();
});

$(window).resize(function () {
  resize();
});

function resize() {

  var theheight = window.innerHeight;
  var thewidth = window.innerWidth;

  var imageheight = theheight - 200;

  if (imageheight > 540) {
    imageheight = 540;
  }
  if (imageheight < 300) {
    imageheight = 300;
  }

  var imagewidth = imageheight / 0.6585365;

  $(".slide").css("height",imageheight);
  $(".slide").css("width",imagewidth);
  $(".slide").attr("height",imageheight);
  $(".slide").attr("width",imagewidth);

}

解决方法

当您第一次调用幻灯片容器元素的宽度和高度时,它看起来像存储一次,然后将传入的幻灯片设置为这些维度,无论您的调整大小脚本在做什么.

我最近遇到了同样的问题:选项的组合

$slideshow.cycle({ 
  containerResize: false,slideResize: false,fit: 1
});

.yourslide { width: yourwidth !important }

为我工作.关键是合适:1 – 文档描述它的方式使它看起来正是我不想要的,但它创造了所需的效果.不幸的是,无法解释它.

猜你在找的jQuery相关文章