Javascript 当scroller为2500px时,如何运行此脚本?
我在这里试过了,但我觉得我做错了什么,能帮忙吗? 我在这里看到了一个类似的代码,刚刚修改过。 多谢各位Javascript 当scroller为2500px时,如何运行此脚本?,javascript,jquery,Javascript,Jquery,我在这里试过了,但我觉得我做错了什么,能帮忙吗? 我在这里看到了一个类似的代码,刚刚修改过。 多谢各位 $(document).ready(function(){ $(document).scrollTop() >= 2500) { var bar = $('.bar'); var p = $('.percents'); var interval; var start = 0; // s
$(document).ready(function(){
$(document).scrollTop() >= 2500) {
var bar = $('.bar');
var p = $('.percents');
var interval;
var start = 0; // start animation at 0%
var end = parseInt(92); // stop progress bar on 78% just for demo
var current = start;
var countUp = function() {
// increment by one during each function call
current++;
bar.css('width', current+'%');
// update percents in html
p.html(current + "%");
// stop interval if we reached our goal (78%)
if (current === end) {
clearInterval(interval);
}
};
// change progress bar every 1000 / (78+1) milliseconds
interval = setInterval(countUp, (2500 / (end + 1)));
};
});
您遇到的问题是什么 如前所述,代码的第二行将生成语法错误。您可能需要以下内容:
if ($(document).scrollTop() >= 2500) {
我认为您应该在scroll事件回调中这样做,因为目前,您的内容在文档刚加载后执行一次,并且滚动处于0
$(document).ready(function() {
var $scroll = $('#scroll'),
isLoading = false;
$(document).on('scroll', function (e) {
$scroll.text($(document).scrollTop());
if ($(document).scrollTop() >= 2500) {
if (!isLoading) {
isLoading = true;
$scroll.addClass('blue');
var bar = $('.bar');
var p = $('.percents');
var interval;
var start = 0; // start animation at 0%
var end = parseInt(92); // stop progress bar on 78% just for demo
var current = start;
var countUp = function() {
// increment by one during each function call
current++;
bar.css('width', current+'%');
// update percents in html
p.html(current + "%");
// stop interval if we reached our goal (78%)
if (current === end) {
clearInterval(interval);
// isLoading = false; // uncomment if you want to load something again !
}
};
// change progress bar every 1000 / (78+1) milliseconds
interval = setInterval(countUp, (2500 / (end + 1)));
}
} else {
$scroll.removeClass('blue');
};
});
});
您在第2行的代码
$(document).scrollTop()>=2500{
无效-请修复。感谢您的回复,问题是chrome在终端停止,但是脚本(effect progrs)内部不起作用。按照当前编写第二行代码的方式,所有浏览器都将停止处理。您的代码的语法不正确-因此,我的建议(我相信它完成了您的尝试,并且是正确的语法)。