无法将异步延迟与 Jquery 脚本一起使用
Can't Use Async defer with Jquery Script
我正在尝试对这个脚本使用异步延迟,但它会影响功能。我不确定我做错了什么?如果您需要查看该网站,请参考以下信息:The Hangout
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script>
$(window).bind("load", function() {
$(window).scroll(function () {
if ($(this).scrollTop() > 600) {
$('.scrollup').fadeIn();
} else {
$('.scrollup').fadeOut();
}
});
$('.scrollup').click(function () {
$("html, body").animate({
scrollTop: 0
}, 600);
return false;
});
});
</script>
在 defer
中,您的脚本会按照指定的顺序加载,但不会在文档本身加载之前加载(包括内联代码)。
您可以执行以下两项操作之一:
- 使用
defer
时将内联代码移动到外部文件
- 将内联代码包装在
DOMContentLoaded
事件回调中
回调看起来像:
window.addEventListener('DOMContentLoaded', function() {
$(window).scroll(function () {
$('.scrollup')[$(window).scrollTop() > 600 ? 'fadeIn' : 'fadeOut']();
});
$('.scrollup').click(function () {
$("html, body").animate({scrollTop: 0}, 600);
return false;
});
});
我正在尝试对这个脚本使用异步延迟,但它会影响功能。我不确定我做错了什么?如果您需要查看该网站,请参考以下信息:The Hangout
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script>
$(window).bind("load", function() {
$(window).scroll(function () {
if ($(this).scrollTop() > 600) {
$('.scrollup').fadeIn();
} else {
$('.scrollup').fadeOut();
}
});
$('.scrollup').click(function () {
$("html, body").animate({
scrollTop: 0
}, 600);
return false;
});
});
</script>
在 defer
中,您的脚本会按照指定的顺序加载,但不会在文档本身加载之前加载(包括内联代码)。
您可以执行以下两项操作之一:
- 使用
defer
时将内联代码移动到外部文件
- 将内联代码包装在
DOMContentLoaded
事件回调中
回调看起来像:
window.addEventListener('DOMContentLoaded', function() {
$(window).scroll(function () {
$('.scrollup')[$(window).scrollTop() > 600 ? 'fadeIn' : 'fadeOut']();
});
$('.scrollup').click(function () {
$("html, body").animate({scrollTop: 0}, 600);
return false;
});
});