Javascript jquery计数器不工作
我在我的站点上有两个计数器,当我加载我的页面时,它们会计数。但当我的屏幕宽度低于800像素时。当我加载页面时,它们不会自动启动 但是,如果我真的快速滚动到该点,它们就位于该站点上。他们确实开始了。而且全屏也很好用。在手机上,它们也可以工作 以下是jquery代码:Javascript jquery计数器不工作,javascript,jquery,html,css,counter,Javascript,Jquery,Html,Css,Counter,我在我的站点上有两个计数器,当我加载我的页面时,它们会计数。但当我的屏幕宽度低于800像素时。当我加载页面时,它们不会自动启动 但是,如果我真的快速滚动到该点,它们就位于该站点上。他们确实开始了。而且全屏也很好用。在手机上,它们也可以工作 以下是jquery代码: if (jQuery('.shortcode_counter').size() > 0) { if (jQuery(window).width() > 760) { jQuery('.shortco
if (jQuery('.shortcode_counter').size() > 0) {
if (jQuery(window).width() > 760) {
jQuery('.shortcode_counter').each(function(){
if (jQuery(this).offset().top < jQuery(window).height()) {
if (!jQuery(this).hasClass('done')) {
var set_count = jQuery(this).find('.stat_count').attr('data-count');
jQuery(this).find('.stat_temp').stop().animate({width: set_count}, {duration: 3000, step: function(now) {
var data = Math.floor(now);
jQuery(this).parents('.counter_wrapper').find('.stat_count').html(data);
}
});
jQuery(this).addClass('done');
jQuery(this).find('.stat_count');
}
} else {
jQuery(this).waypoint(function(){
if (!jQuery(this).hasClass('done')) {
var set_count = jQuery(this).find('.stat_count').attr('data-count');
jQuery(this).find('.stat_temp').stop().animate({width: set_count}, {duration: 3000, step: function(now) {
var data = Math.floor(now);
jQuery(this).parents('.counter_wrapper').find('.stat_count').html(data);
}
});
jQuery(this).addClass('done');
jQuery(this).find('.stat_count');
}
},{offset: 'bottom-in-view'});
}
});
}
}
我对这件事一无所知。所以我想把它贴在这里。与此同时,我正在努力解决这个问题
所以如果有人知道这个问题的解决方法。求你了
提前谢谢!快乐编码
声明:
添加了工作JSFIDLE。问题是。我的错误仅在计数器最初不在屏幕上时发生。宽度在800px以下。在JSFIDLE中,它总是在屏幕上,对吗
第2条:
我找到了这一排
jQuery(this).waypoint(function(){
},{offset: 'bottom-in-view'});
第3条:
很明显,我发现问题出在另一排。我已经把它放在下面的答案中,但我也会把它放在这里:
删除:
jQuery(this).waypoint(function(){
},{offset: 'bottom-in-view'});
现在可以很好地工作了。我不完全确定您所说的“我的错误只在计数器最初不在屏幕上时发生”是什么意思 但这就是你想要的吗: 我唯一改变的是这句话:
if (jQuery(window).width() > 260) {
此外,如果不需要width()
,则只需将其删除,代码应如下所示:
if (jQuery('.shortcode_counter').size() > 0) {
jQuery('.shortcode_counter').each(function(){
if (jQuery(this).offset().top < jQuery(window).height()) {
if (!jQuery(this).hasClass('done')) {
var set_count = jQuery(this).find('.stat_count').attr('data-count');
jQuery(this).find('.stat_temp').stop().animate({width: set_count}, {duration: 3000, step: function(now) {
var data = Math.floor(now);
jQuery(this).parents('.counter_wrapper').find('.stat_count').html(data);
}
});
jQuery(this).addClass('done');
jQuery(this).find('.stat_count');
}
} else {
jQuery(this).waypoint(function(){
if (!jQuery(this).hasClass('done')) {
var set_count = jQuery(this).find('.stat_count').attr('data-count');
jQuery(this).find('.stat_temp').stop().animate({width: set_count}, {duration: 3000, step: function(now) {
var data = Math.floor(now);
jQuery(this).parents('.counter_wrapper').find('.stat_count').html(data);
}
});
jQuery(this).addClass('done');
jQuery(this).find('.stat_count');
}
},{offset: 'bottom-in-view'});
}
});
}
if(jQuery('.shortcode_计数器').size()>0){
jQuery('.shortcode_counter')。每个(函数(){
if(jQuery(this).offset().top
下面是一个没有width()场景的小提琴:
我不完全确定您所说的“我的错误只在计数器最初不在屏幕上时发生”是什么意思 但这就是你想要的吗: 我唯一改变的是这句话:
if (jQuery(window).width() > 260) {
此外,如果不需要width()
,则只需将其删除,代码应如下所示:
if (jQuery('.shortcode_counter').size() > 0) {
jQuery('.shortcode_counter').each(function(){
if (jQuery(this).offset().top < jQuery(window).height()) {
if (!jQuery(this).hasClass('done')) {
var set_count = jQuery(this).find('.stat_count').attr('data-count');
jQuery(this).find('.stat_temp').stop().animate({width: set_count}, {duration: 3000, step: function(now) {
var data = Math.floor(now);
jQuery(this).parents('.counter_wrapper').find('.stat_count').html(data);
}
});
jQuery(this).addClass('done');
jQuery(this).find('.stat_count');
}
} else {
jQuery(this).waypoint(function(){
if (!jQuery(this).hasClass('done')) {
var set_count = jQuery(this).find('.stat_count').attr('data-count');
jQuery(this).find('.stat_temp').stop().animate({width: set_count}, {duration: 3000, step: function(now) {
var data = Math.floor(now);
jQuery(this).parents('.counter_wrapper').find('.stat_count').html(data);
}
});
jQuery(this).addClass('done');
jQuery(this).find('.stat_count');
}
},{offset: 'bottom-in-view'});
}
});
}
if(jQuery('.shortcode_计数器').size()>0){
jQuery('.shortcode_counter')。每个(函数(){
if(jQuery(this).offset().top
下面是一个没有width()场景的小提琴:
显然是这个功能:
jQuery(this).waypoint(function(){
},{offset: 'bottom-in-view'});
我删除了行,它又能正常工作了。很明显,这是一个函数:
jQuery(this).waypoint(function(){
},{offset: 'bottom-in-view'});
我删除了这些行,它又能正常工作了。你能提供一把可用的小提琴吗?我试试。等一下@DavidHope@DavidHope添加了JSFIDLE您能提供一个可用的小提琴吗?我试试。等一下@DavidHope@DavidHope添加了jsfiddleve,找到了它的
if(jQuery(this).offset().top
if-else语句。但是,它会进入链接到该if语句的else。现在有些地方出错了,甚至更准确。它是这样一句话:jQuery(this).waypoint(function(){
和},{offset:'bottomin view'})代码>Iv