そのため、リスト内の次の10個のアイテムを表示するブロックがある検索ページで作業しています。私がやりたいのは、リストの最後に達したときにこのブロックを非表示にすることです。
function loadMore() {
//Load the content
var urlPortion = searchQuery.split("?");
var urlString = "?hits=10&offset=";
var offset = 0;
var pageCounter = 1;
$(".box-footer").click(function () {
offset += 10;
pageCounter++;
var urlBuilder = urlPortion[0] + urlString + offset + "&" + urlPortion[1];
$.get(urlBuilder, function (data) {
var content = $(".search-result-list li", data);
$('.search-result-list').append(content);
});
});
//Visibility of "Show more"-bar
var textString = $(".search-result-totalhits").html();
var totalHitsString = /\d+/;
var totalHits = textString.match(totalHitsString);
var numberOfPages = (Math.ceil(totalHits/10));
if ((totalHits > 10) && (pageCounter < numberOfPages)) {
$(".p-sok .box-footer").show();
}
else {
$(".p-sok .box-footer").hide();
}
};
ここでの私の問題は、ブロックを表示するかどうかを実際にチェックする最後の条件が常に真のままであるということです。変数「pageCounter」は上記のクリック関数以外では使用できないと思いますが、よくわかりません。18行目で変数をコンソールに出力しようとしましたが、何も出力されません。
誰かが私にソムのヒントを教えてくれませんか?