ホームページ > バックエンド開発 > PHPチュートリアル > スクロール ページング コードがページ番号を複数回要求するため、データが重複することがわかりました。これは次のコードに関連する問題ですが、解決策が見つかりませんでした。

スクロール ページング コードがページ番号を複数回要求するため、データが重複することがわかりました。これは次のコードに関連する問題ですが、解決策が見つかりませんでした。

WBOY
リリース: 2016-06-13 12:19:11
オリジナル
1502 人が閲覧しました

スクロールするページング コードはページ番号を複数回要求するため、データが重複します。テストした結果、次のコードの問題ですが、解決策が見つかりませんでした。
var page=1;var setFixed=function() {
var t=$(document).scrollTop(); //スクロールの高さ
var wh=$(window).height();//スクロールの高さthe window
var h=$( document).height();//Web ページの高さ window
var data={};
var cateid=$("#cateid").val ();
if(page>0){
$("#load").show();
//a=document.body.scrollHeight;
//b=$( window).scrollTop();
//c =$(window).height();
//if(c==(a-b) || page ==1){
if(t wh>=h-50){
$.post(app.config.site "/Game/getGame",{cateid:cateid,page:page},function(data){
$("#load ").hide();
if(data .status==1){
//e.preventDefault();
$(".list_class").html($(".list_class" ).html() data.info);
//$(".list_class").html(data.info);//ページ番号を上書きします
ページ
}else{
ページ; =0;
}

} ,'json');

}
}
};
setFixed(page);
window.onscroll =setFixed;
});
}) ;

------解決策---------------------- isajaxsend=false 変数を設定します (スクロール ページング リクエストが実行されているかどうかを判断するためにのみ使用されます)

<br />var isajaxsend=false;<br />var page=1;<br />var setFixed=function(){<br />	var t=$(document).scrollTop(); //卷上去的高度<br />	var wh=$(window).height();//窗口的高度<br />	var h=$(document).height();//网页窗口的高度<br />	var data={};<br />	var cateid=$("#cateid").val();<br />	if(page>0){<br />		$("#load").show();<br />		//a=document.body.scrollHeight;<br />		//b=$(window).scrollTop();<br />		//c=$(window).height();<br />		//if(c==(a-b) <br><font color='#FF8000'>------解决思路----------------------</font><br> page ==1){<br />		if(t+wh>=h-50){<br />			if (isajaxsend) {//判断是否有滚动分页正在请求,若有则不请求<br />				return false;<br />			}<br />			isajaxsend = true;//标识正在请求分页内容<br />			$.post(app.config.site+"/Game/getGame",{cateid:cateid,page:page},function(data){<br />				$("#load").hide();<br />				if(data.status==1){<br />					//e.preventDefault();	<br />					$(".list_class").html($(".list_class").html()+data.info);<br />					//$(".list_class").html(data.info);//覆盖页码<br />					page++;<br />				}else{<br />					page=0;<br />				}<br />				isajaxsend = false;//不论成功与否,都标识为没有请求<br />			},'json');<br />		}<br />	}<br />};<br />
ログイン後にコピー

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート