我正在尝试在带有 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, nextSlideElement, options, 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);
}