2012-03-13 4 views
2

은 div 표시를 트리거하는 고정 점에서 작업 중입니다. Jquery 1.3.2 라이브러리로 실행해도 아무런 문제가 없지만 1.7.1로 시도하면 인식되지 않습니다. 어떤 아이디어?스크롤 앵커 표시/숨기기

$(function() { 
var a = function() { 
var windowtop = $(window).scrollTop(); 
var d = $("#anchor").offset({scroll:false}).top; 
var c= $("#flyout"); 
if (windowtop > d) { 
    c.css({visibility:"visible"}); 
} else { 
    if (windowtop <= d) { 
    c.css({visibility:"hidden"}); 
    } 
} 
}; 
$(window).scroll(a);a() 
}); 
}); 
+0

브라우저의 오류 콘솔은 무엇을 말하고 있습니까? –

+0

브라우저 콘솔에 오류가 표시되지 않습니다. 그냥 과거 앵커 포인트를 스크롤하면 가시성을 유발하지 않도록 인식되지 않습니다 – andrew

답변

0

d 항상 undefined를 반환하는 것 같다.

offset()에 대한 인수로 전달하는 {scroll:false} 개체로 인해 코드가 손상된 것으로 의심됩니다. 제거하면 문제가 해결 될 수 있습니다.

jQuery().offset() API를 확인하십시오.

jQuery(elem).offset()은 요소의 위쪽 및 왼쪽 좌표가 들어있는 객체를 반환합니다. jQuery(elem).offset().top;으로 사용할 수 있습니다.

jQuery(elem).offset({top:20, left:20});은 요소의 새로운 위쪽 및 왼쪽 좌표를 설정합니다.

+0

감사합니다 pierre, 트릭을 – andrew

관련 문제