无法弄清楚为什么carousel随机化代码会随机使carousel在加载时消失
Can't figure out why carousel randomizer code randomly makes the carousel disappear on load
我有代码,我用它来使BS轮播随机化幻灯片页面加载,这样它就会随机选择一个并首先显示它。起初它工作得很好,但现在当我重新加载页面或尝试第一次点击它时,它根本不显示任何东西。
这是我用的JQuery,我试过调试但我对JQuery不太了解
<!--code below is for carousel randomizer-->
<script>
var $item = $('.carousel .item');
$item.addClass('full-screen');
var $numberofSlides = $('.item').length;
var $currentSlide = Math.floor((Math.random() * $numberofSlides));
$('.carousel-indicators li').each(function(){
var $slideValue = $(this).attr('data-slide-to');
if($currentSlide == $slideValue) {
$(this).addClass('active');
$item.eq($slideValue).addClass('active');
} else {
$(this).removeClass('active');
$item.eq($slideValue).removeClass('active');
}
});
$('.carousel').carousel({
interval: 6000,
pause: "false"
});
</script>
下面是html
<div id="mycarousel" class="carousel slide" data-ride="carousel">
<!-- Indicators -->
<ol class="carousel-indicators">
<li data-target="#mycarousel" data-slide-to="0"></li>
<li data-target="#mycarousel" data-slide-to="1"></li>
<li data-target="#mycarousel" data-slide-to="2"></li>
<li data-target="#mycarousel" data-slide-to="3"></li>
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner" role="listbox">
<div class="item active">
<img src="/images/banner1.jpg" alt="First Image">
</div>
<div class="item">
<img src="/images/banner2.jpg" alt="Second Image">
</div>
<div class="item">
<img src="/images/banner3.jpg" alt="Third Image">
</div>
<div class="item">
<img src="/images/banner4.jpg" alt="Fourth Image">
</div>
<div class="item">
<img src="/images/banner5.jpg" alt="Fifth Image">
</div>
<div class="item">
<img src="/images/banner6.jpg" alt="Sixth Image">
</div>
</div>
<!-- Controls -->
<!--<a class="left carousel-control" href="#mycarousel" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#mycarousel" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>-->
</div>
是否有什么明显的东西会导致它不工作?
谢谢!
这听起来像是脚本有时在jQuery准备好之前运行并抛出错误。
你应该把所有的代码放入jQuery的ready函数$(document).ready(function(){
//Your code here
});
或者更好的是,将代码放入它自己的函数中,以便从ready处理程序
调用<script>
function InitCarousel(){
var $item = $('.carousel .item');
$item.addClass('full-screen');
var $numberofSlides = $('.item').length;
var $currentSlide = Math.floor((Math.random() * $numberofSlides));
$('.carousel-indicators li').each(function(){
var $slideValue = $(this).attr('data-slide-to');
if($currentSlide == $slideValue) {
$(this).addClass('active');
$item.eq($slideValue).addClass('active');
} else {
$(this).removeClass('active');
$item.eq($slideValue).removeClass('active');
}
});
$('.carousel').carousel({
interval: 6000,
pause: "false"
});
}
$(document).ready( InitCarousel );
</script>
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- 如何在生成下载文件时显示加载动画
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 无法在通过jQuery的ajax加载的页面中执行javascript
- Emberjs应用程序加载在除Index之外的所有路由上
- 在chrome.tabs.onCreated之后加载HTML页面
- 单击F5时如何停止页面加载
- HTML5音频加载和播放获胜'我不能在iPad上工作
- 跟踪在页面加载时应用内联样式的JavaScript
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- jQuery Lazy加载动画滚动
- Html页面上的多个Base64图像和平滑加载
- 如何创建带有插槽的vue js组件预加载程序
- Bootstrap carousel开始加载wordpress
- 无法弄清楚为什么carousel随机化代码会随机使carousel在加载时消失
- Owl Carousel: Javascript不加载.Shopify问题或代码问题
- 用AngularJS动态内容加载Owl Carousel 2
- Angular-Carousel模块加载失败
- Bootstrap Carousel直到第一个间隔过期才加载
- Bootstrap.js Carousel加载特定项目