Javascript 变量在jQuery/JS中不递增?
由于某种原因,我的变量一直重置为2,尽管我想在调用函数时增加变量。这真的让我很恼火,我已经重构了好几次代码,但都没有用!应该很简单 这是我的密码:Javascript 变量在jQuery/JS中不递增?,javascript,jquery,wordpress,infinite-scroll,Javascript,Jquery,Wordpress,Infinite Scroll,由于某种原因,我的变量一直重置为2,尽管我想在调用函数时增加变量。这真的让我很恼火,我已经重构了好几次代码,但都没有用!应该很简单 这是我的密码: ( function( $ ) { $( document ).ready( function () { var count = 2; var total = <?php echo $loop->max_num_pages; ?>; if ( c
( function( $ ) {
$( document ).ready( function () {
var count = 2;
var total = <?php echo $loop->max_num_pages; ?>;
if ( count <= total ) {
$( window ).scroll( function() {
if ( $( window ).scrollTop() == $( document ).height() - $( window ).height() ) {
$.ajax({
url: "<?php bloginfo( 'wpurl' ) ?>/wp-admin/admin-ajax.php",
type:'POST',
data: "action=infinite_scroll&page_no=" + count + '&loop_file=forums',
success: function( html ){
$( "#content" ).append( html );
}
});
count++;
}
});
} else {
return;
}
});
})( jQuery );
(函数($){
$(文档).ready(函数(){
var计数=2;
风险价值总额=;
if(count在函数外定义count变量
e、 g
var计数=2;
(函数($){
$(文档).ready(函数(){
风险价值总额=;
如果(先算两件事):
var可以缩短为:
var var1 = 'string',
var2 = 'int';
不要在JS中混用php——这很混乱。创建一个隐藏的范围,给它分配数据标签,然后像那样调用
其次,这是因为每当调用函数时,该值都会被重置。将其放在外部,或传递一个名为count的参数,以便使其更通用,并在整个项目中使用。这里的问题是varcount
是方法的本地值。这意味着它仅在该方法调用中处于活动状态。下次如果您再次调用函数,它将创建一个不同的计数
,值为2,因为这是您在声明中指定的值。将变量声明移到方法之外,一切都会好起来。您不应该使用全局变量谢谢您的回答。我已经更新了我的问题,仍然有问题!我认为您返回的响应中的html
是否包含再次生成变量的相同脚本?谢谢您的回复。我已使用新代码进行了更新,但仍然存在问题。变量现在在方法之外,但变量仍然没有正确更新。
( function( $ ) {
pageCount = 2;
total = <?php echo $loop->max_num_pages; ?>;
$( window ).scroll( function() {
if ( $( window ).scrollTop() == $( document ).height() - $( window ).height() ){
if ( pageCount > total ){
return false;
} else {
$.ajax({
url: "<?php bloginfo( 'wpurl' ) ?>/wp-admin/admin-ajax.php",
type:'POST',
data: "action=infinite_scroll&page_no=" + pageCount + '&loop_file=forums',
success: function( html ){
$( "#content" ).append( html );
pageCount++;
}
});
}
}
});
})( jQuery );
var count = 2;
( function( $ ) {
$( document ).ready( function () {
var total = <?php echo $loop->max_num_pages; ?>;
if ( count <= total ) {
$( window ).scroll( function() {
if ( $( window ).scrollTop() == $( document ).height() - $( window ).height() ) {
$.ajax({
url: "<?php bloginfo( 'wpurl' ) ?>/wp-admin/admin-ajax.php",
type:'POST',
data: "action=infinite_scroll&page_no=" + count + '&loop_file=forums',
success: function( html ){
$( "#content" ).append( html );
}
});
count++;
}
});
} else {
return;
}
});
})( jQuery );
var var1 = 'string',
var2 = 'int';