2012-09-17 2 views
5

jQuery 동위 원소와 함께 무한 스크롤 플러그인 (infinite-scroll)을 사용하고 있으며 사용자가 더 많은 항목을 보려면 페이지를 아래로 스크롤 할 때 맞춤 검색어 매개 변수로 경로를 수정할 수 있는지 궁금합니다.무한 스크롤 플러그인이 맞춤 검색어로 경로 수정

경로에 액세스하여 쿼리 매개 변수 중 하나를 수정할 수있는 방법이 있습니까? 첫 번째 항목 집합을 반환하기 위해 처음으로 경로를 확인하고 그 다음 페이지, 1,2 3 오케이하지만 페이지 번호를 처음으로 업데이트하는 데 사용한 것과 동일한 쿼리 매개 변수를 사용하여 오케이했습니다.

var customPath = path + "?type=items&category=clothes&pageNumber="; 

나는이 잘못된 방향으로 접근하는 건가요 :이 같은 뭔가 페이지 3 또는 4를 타격 할 때

나는 매개 변수 중 하나를 수정 하시겠습니까? 내가 조금 해킹을해야했다하지만 난 관련 질문에 저를 가리키는 위해 리치에 내 요구에 대한 감사 작업을 가지고 있으므로 확인

$container.infinitescroll({ 
    navSelector: '#page_nav', // selector for the paged navigation 
    nextSelector: '#page_nav a', // selector for the NEXT link (to page 2) 
    itemSelector: '.element', // selector for all items you'll retrieve 
    loading: { 
     finishedMsg: 'No more categories to load.', 
     msgText: "<em>Loading the next set of categories...</em>", 
     img: 'http://i.imgur.com/qkKy8.gif' 
    }, 
    pathParse: function (path, nextPage) { 
     var customPath = path + "?type=items&category=all&pageNumber="; 
     path = [customPath, '#contaner']; 
     return path; 
    } 
}, 
// call Isotope as a callback 
function (newElements) { 
    $container.isotope('appended', $(newElements)); 
}); 
+0

customPath가 올바르지 않은 js 구문입니다. 당신은 그런 이중 따옴표 안에 "구두"를 가질 수 없습니다. 그냥 큰 따옴표를 제거하고 괜찮을 것입니다. ('& category = shoes &') 나는 당신이 나를 이해하기에 충분한 정보를 제공했다고 생각하지 않는다. 사용자가 3 페이지에 도달하면 카테고리를 "옷"에서 "신발"로 변경하겠습니까? 그 말은 신발 3면과는 반대로 옷 3면에 머물고 싶습니까? 정확히 당신이하려는 것은 무엇입니까? – Ringo

+0

죄송합니다 실수로 양식 내 측면 나는 따옴표를 제거했습니다. 처음에는 사용자가 페이지를 볼 때 다른 범주에서 페이지에 30 항목이 있습니다. 이제 페이지에 버튼이 있으며 사용자가 클릭하면 항목이 필터링되고 카테고리의 옷만 필터링됩니다. 이제 사용자가 아래로 스크롤하면 다음 30 개 항목을 가져올 필요가 있지만 경로 쿼리를 수정해야 모든 항목을 가져 오는 대신 카테고리 의류 항목 만 가져올 수 있습니다. –

+1

무한 스크롤에 대한 답변을 충분히 알지 못하지만 여기에 도움이 될만한 대답이 있습니다. http : // stackoverflow.고마워, 나는 내가 원한대로하기 위해 플러그인을 조금 해킹 할 수 있었다.// 질문/11397648/무한 - 스크롤 - pathparse - 반대 - wordpress - 덧글 – Ringo

답변

7

:

여기 내 코드입니다. 라는 함수 내에서 다음

//line 67 
$.infinitescroll.prototype = { 
     //My custom parameters 
     pageType: "&type=items", 
     categoryParam: "&category=shoes", 
     /* 
      ---------------------------- 
      Private methods 
      ---------------------------- 
      */ 

:

desturl = path.join(opts.state.currPage) 
: 변수가

retrieve: function infscr_retrieve(pageNum) {} 

나는 여기에 jquery.infinitescroll.js 프로토 타입에 몇 가지 추가 속성을 추가

변경됨

desturl = path.join(opts.state.currPage + $.infinitescroll.prototype.pageType + $.infinitescroll.prototype.categoryParam); 

이렇게하면 desturl 끝에 추가 쿼리 매개 변수가 추가됩니다.

$('#filters a').click(function() { 
    $.infinitescroll.prototype.pageType = "&type=products" ;     
    $.infinitescroll.prototype.pageType = "&category=clothes";       
    return false; 
}); 

이것은 당신 사용자 정의 쿼리를 다음 페이지의 쿼리 매개 변수를 업데이트합니다 : 당신은 같은 것을 할 수있는 자바 스크립트 당신이 당신 페이지에서 다음

.

희망이 있으면 도움이 될 것입니다.