php ajax自动刷新平滑

php ajax自动刷新平滑,php,ajax,Php,Ajax,代码工作正常,但由于该函数每2秒刷新一次,因此图像会突然闪烁并熄灭。我怎样才能使它看起来光滑或不眨眼 echo '<script> window.setInterval(function() { yopahshareloader("'.$id.'"," '.$postype.'"); }, 2000); </script>'; //the code calling the ajax function. echo "<img onclick='respond

代码工作正常,但由于该函数每2秒刷新一次,因此图像会突然闪烁并熄灭。我怎样才能使它看起来光滑或不眨眼

echo '<script>
window.setInterval(function() {
    yopahshareloader("'.$id.'"," '.$postype.'");
}, 2000);
</script>';

//the code calling the ajax function.
echo "<img onclick='respond(";
echo '"yo","' . $id . '"' . ',"' . $postype . '"';
echo " )' src='images/icons/yo.png' style='margin-bottom:5px;'/>";

您的代码看起来有点不清楚,所以我假设图像会闪烁,因为它正在更改

echo '<script>
window.setInterval(function() {
    yopahshareloader("'.$id.'"," '.$postype.'");
}, 2000);
</script>';

//the code calling the ajax function.
echo "<img onclick='respond(";
echo '"yo","' . $id . '"' . ',"' . $postype . '"';
echo " )' src='images/icons/yo.png' style='margin-bottom:5px;'/>";
首先,谷歌搜索stackoverflow通常会帮助你得到答案,但以下是你要寻找的

echo '<script>
window.setInterval(function() {
    yopahshareloader("'.$id.'"," '.$postype.'");
}, 2000);
</script>';

//the code calling the ajax function.
echo "<img onclick='respond(";
echo '"yo","' . $id . '"' . ',"' . $postype . '"';
echo " )' src='images/icons/yo.png' style='margin-bottom:5px;'/>";
您希望加载图像然后显示它,所以您可以做的是将其加载到javascript中,在加载时绑定事件,然后执行您的魔术:p

echo '<script>
window.setInterval(function() {
    yopahshareloader("'.$id.'"," '.$postype.'");
}, 2000);
</script>';

//the code calling the ajax function.
echo "<img onclick='respond(";
echo '"yo","' . $id . '"' . ',"' . $postype . '"';
echo " )' src='images/icons/yo.png' style='margin-bottom:5px;'/>";
//create image object
var image = new Image();

//add image path
image.src = "";

//bind load event
image.onload = function(){
    //now load next image
    // The image has loaded
}

因此,现在您已经停止闪烁,您可以考虑使用jQuery来实现fadeIn和fadeOut效果。

请同时显示共享加载程序和响应的方法。。。有没有像jQuery这样的框架可用?可能的解决方案是淡出当前图像,同时淡出新图像…respond只是一个数据库计数递增函数。yopahshareloader函数是实际的ajax函数,每隔2秒调用一次。图像不会改变,只有图像旁边的计数会改变。然而,整个图像重新加载。图像没有改变。旁边的号码可能会改变。我们是否在js中有一个选择器,只有当db中的某些内容发生变化时,我们的元素才会被刷新?如果你可以通过编辑你的原始帖子来提供更多你正在做的事情,我可以提供帮助,也许其他人也可以。我不知道如果你不编辑那个元素为什么会闪烁。
echo '<script>
window.setInterval(function() {
    yopahshareloader("'.$id.'"," '.$postype.'");
}, 2000);
</script>';

//the code calling the ajax function.
echo "<img onclick='respond(";
echo '"yo","' . $id . '"' . ',"' . $postype . '"';
echo " )' src='images/icons/yo.png' style='margin-bottom:5px;'/>";