【发布时间】:2018-12-14 14:42:06
【问题描述】:
在内容成功加载之前,我会显示一个加载栏。加载后,我通过 jQuery 显示内容,但是当我第一次访问该页面时,加载器将永远显示并且on load 事件没有触发。当我手动刷新页面时它会触发。我的代码有什么问题?
事件调用代码:
$(window).on('load', function(){
$("#slider-pre-loader").fadeOut("slow");
$("#video-blog-slider").fadeIn();
});
动态 HTML:
<div id="slider-pre-loader"></div>
<div id="video-blog-slider" style="display: none">
<div class="blog-category-items blog-page" id="blogIndex">
<div class="container">
<?php
$hpos = 0;
foreach ($categories as $category):
$categoryhref = fakeUrl::genSlugFromText($category['name']);
$listVideos = $category['videos'];
if (in_array($category['name'], $categoryDisplay)) :
?>
<div class="blog-groups">
<div class="group-heading">
<h3>
Test title
</h3>
</div>
<?php if ($category['desc'] != '') :?>
<p class="group-desc"><?php echo $category['desc'];?></p>
<?php endif;?>
<?php
$slideClass = '';
if (!$detect->isMobile() && !$detect->isTablet() ) {
$slideClass = 'blog-slider';
}
?>
<div class="<?php echo $slideClass;?> owl-lg-dot mb-none owl-theme owl-loaded" id="videoList">
<?php
$v = 0;
foreach ($listVideos as $video) :
$v++;
$itemClass = '';
if (($detect->isMobile() || $detect->isTablet()) && $v > 5) {
$itemClass = 'item-disable';
}
$videoSlug = fakeUrl::genSlugFromText($video['title']);
?>
<div class="blog-item <?php echo $itemClass;?>">
<div class="blog-image">
<a href="/blog/<?php echo $videoSlug; ?>" title="<?php echo $video['title'];?>">
</a>
</div>
<div class="caption">
<a class="blog-list-video-title" href="/blog/<?php echo $videoSlug; ?>" title="<?php echo $video['title'];?>">
</a>
</div>
<div class="blog-metas">
<small class="blog-views"><?php echo number_format($video['views']); ?> views</small>
</div>
</div>
<?php
endforeach;
?>
</div>
</div>
<?php
endif;
endforeach;
?>
</div>
</div>
</div>
jQuery 放置在事件调用之前:
<script src="//code.jquery.com/jquery-1.11.3.min.js" async></script>
【问题讨论】:
-
这是一个奇怪的问题。您确定加载了正确的 java 脚本。所以不是兑现版什么的。
-
@MarkBaijens 更改后我每次都刷新缓存
-
如果从加载 jQuery 的脚本标签中删除
async会怎样?以前从未见过它,但如果它确实异步加载 jQuery,您的代码在执行时可能无法使用它。虽然这应该在控制台中给出错误。
标签: javascript jquery