Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery-setInterval,每个值$_Javascript_Jquery - Fatal编程技术网

Javascript jQuery-setInterval,每个值$

Javascript jQuery-setInterval,每个值$,javascript,jquery,Javascript,Jquery,我要把我的头发扯下来。我正在尝试与我的PHP函数交互,该函数有时会测量:timeSince()发布帖子 我不需要在jQuery中使用插件来实现这一点,谢谢:o) 但是我不想在所有.post box time div上运行$.get(),因此我使用$.each。但它只是更新最后一个元素,但给我其他div的结果。 ->就好像它没有做$each() 这是我的密码: setInterval(function() { $('.post-box-time').each(function()

我要把我的头发扯下来。我正在尝试与我的PHP函数交互,该函数有时会测量:timeSince()发布帖子

我不需要在jQuery中使用插件来实现这一点,谢谢:o)

但是我不想在所有.post box time div上运行$.get(),因此我使用$.each。但它只是更新最后一个元素,但给我其他div的结果。 ->就好像它没有做$each()

这是我的密码:

setInterval(function() {
        $('.post-box-time').each(function() {
            var time = $(this).attr('data-time');
            $this = $(this);

            $.get("sys/calls.handler.php", { do: 'timeSince', data: time },
                function(data){
                    $this.html(data);
                });
        }); // each function
    }, 1000);
使用选项。这与你的问题有关

希望这将对您有所帮助。

使用选项。这与你的问题有关


希望这能对您有所帮助。

在声明
$this
之前,您应该抛出一个
var


您将其声明为全局变量,而不是在
each()
运行的每个函数的作用域(这是var所做的)内声明。因此,当您的响应回调实际被触发时,您的循环已经完成并设置了全局变量
$this
(或
窗口。$this
)通过each()循环时找到的最后一个.post框时间的值。

在声明
$this
之前,您应该抛出一个
var


您将其声明为全局变量,而不是在
each()
运行的每个函数的作用域(这是var所做的)内声明。因此,当您的响应回调实际被触发时,您的循环已经完成并设置了全局变量
$this
(或
窗口。$this
)通过each()循环时找到的最后一个.post框时间的值。

我认为each函数中的这个值是对原始DOM元素的引用。.each提供从0开始的索引,因此您应该改为执行
$('.post-box time:eq('+i+'))

我认为each函数中的这是对原始DOM元素的引用。.each提供从0开始的索引,因此您应该改为执行
$('.post-box time:eq('+i+'))

如果打开控制台,是否会看到多个传出请求?(与.post box time的数量相同?有2个。post box time,我明白了。您的代码看起来应该可以工作。对我来说,这不是我的问题。将var放在$this…$(this)前面工作根本不起作用。没有任何返回。如果打开控制台,是否会看到多个传出请求?(与.post-box time的数量相同?有2个。post-box-time,我明白了。你的代码看起来应该可以工作。我想这不是我的问题。它通过将var放在$this…$(this)前面来工作。)根本不管用,什么都不管用returned@Kolind如果没有
var
$this
被声明为全局变量而不是局部变量。@JonathanLonowski很棒。非常感谢:)令人惊讶的是,“var”可以使整个函数工作。我喜欢编程:)您将其声明为全局变量,而不是在
each()
运行的每个函数的作用域(这是
var
所做的)内声明。因此,当您的响应回调实际被触发时,您的循环已经完成并设置了全局变量$this(或
窗口。$this
)对于最后一个
.post box time
的值,它在通过
each()
@Kolind循环时发现,没有
var
$this
被声明为全局变量而不是局部变量。@JonathanLonowski真棒。非常感谢:)令人惊讶的是,“var”可以使整个函数工作。我喜欢编程:)您将它声明为一个全局变量,而不是在
each()
运行的每个函数的作用域(这就是
var
所做的)内声明它。因此,当您的响应回调实际被触发时,您的循环已经完成,并将全局变量$this(或
window.$this
)设置为最后一个
的值。在通过
each()进行循环时,它发现的邮箱时间