我的第一篇文章,如果格式错误,请道歉。
我有一个项目,我尝试使用Javascript创建幻灯片。我已将图像放入阵列并使幻灯片显示运行。
我面临的问题是图像比视口大得多。我查看了this帖子以及this帖子和其他许多帖子。它们解决了重新调整大小的问题,但不适用于数组中的图像,或者解决方案需要在HTML中添加图像,这不是我想要做的。我试图使用CSS,但它不起作用并使用
在javascript中添加行 $("#libImage")。style.width =' 50%&#39 ;;
$("#libImage")。style.height =' auto';
只会改变您可以看到的图像大小,而不是图像本身。这对于我尝试做的事情甚至是可能的,如果是这样,我应该使用它的哪个和哪里得到我想要的结果?
非常感谢您的帮助。
HTML
<div id="libImage"></div>
的Javascript
var images = ["../images/lib-orange.jpg", "../images/lib-main.jpg", "../images/lib-powel.jpg", "../images/lib-ostrander.jpg"];
$(function () {
var i = 0;
$("#libImage").css("background", "url(images/" + images[i] + ")");
setInterval(function () {
i++;
if (i == images.length) {
i = 0;
}
$("#libImage").fadeOut("slow", function () {
$(this).css("background", "url(images/" + images[i] + ")");
$(this).fadeIn("slow");
});
}, 3000);
});
感谢您的回复,对此感到抱歉。它与我得到的效果不一样,但同样的问题。图片未显示为缩放到视口的大小。
答案 0 :(得分:0)
而不是background: url()
我使用了img
标记
<div id="libImage"><img src="" ></div>
并将$("#libImage").css("background", "url(images/" + images[i] + ")");
替换为$("#libImage img").prop("src", images[i]);
css的变化是:
div { width: 100%; height: 100vh; text-align: center; }
img {
max-height: 90%;
max-width: 90%;
}