我正在索引页面上显示一个随机轮播。当我们刷新时,它工作得很好,但是当用户单击后退按钮以回到index.html
轮播显示时,页面上的某些项目会将用户重定向到另一个页面。
代码如下:
$(document).ready(function() {
var random = Math.floor(Math.random() * 2);
if (random === 0) {
$('#myCarousel').show();
$('#my3').hide();
} else {
$('#my3').show();
$('#my3').show();
$('#myCarousel').hide();
}
});
为什么jQuery在这种情况下不起作用?
答案 0 :(得分:1)
您的页面上有2个轮播,并且您使用此JS随机显示了一个或另一个。
«点击后退按钮不会导致页面重新运行javascript»,正如Taplar在评论中正确指出的那样。现在看来页面已返回到执行文档就绪处理程序之前的状态。
由于.remove()
技巧也不起作用...
我会尝试仅使用一个滑块。但是,请根据随机数替换或替换图片幻灯片组。
因此,您必须在阵列中替换图像。
var replacementImageArray = ["assets/img/4.jpg", "assets/img/1.jpg", etc...]
然后准备好文档,检查随机数,然后进行替换...
$(document).ready(function() {
var random = Math.floor(Math.random() * 2);
if (random === 0) {
$('#myCarousel').find("img").each(function(index){
$(this).attr("src", replacementImageArray[index]);
}
}
});
免责声明:上面的脚本是未经测试的建议...就像策略提示一样。
if (Math.random() >= 0.5) {
Math.random()函数返回一个浮点伪随机数,范围为0-1(包括0,但不包括1)