>  기사  >  웹 프론트엔드  >  jQuery.scroll() 함수에 대한 자세한 설명

jQuery.scroll() 함수에 대한 자세한 설명

巴扎黑
巴扎黑원래의
2017-06-29 09:36:052701검색

scroll() 함수는 일치하는 각 요소의 스크롤 이벤트에 핸들러 함수를 바인딩하는 데 사용됩니다. 이 함수는 스크롤 이벤트를 트리거하는 데에도 사용할 수 있습니다. 또한 이벤트 핸들러 함수에 몇 가지 추가 데이터를 전달할 수도 있습니다.

스크롤 이벤트는 요소의 스크롤 막대 위치가 변경되면 트리거됩니다. 이 이벤트는 일반적으로 창 개체 또는 기타 스크롤 가능한 요소에만 적용됩니다(일반적으로 스크롤 막대가 나타납니다).

또한 동일한 요소에 대해 이 함수를 여러 번 호출하여 여러 이벤트 핸들러를 바인딩할 수 있습니다. 스크롤 이벤트가 발생하면 jQuery는 바인딩된 순서대로 바인딩된 이벤트 처리 기능을 실행합니다.

scroll()을 통해 바인딩된 이벤트를 삭제하려면 unbind() 함수를 사용하세요.

이 함수는 jQuery 객체(인스턴스)에 속합니다.

Syntax

jQueryObject.scroll( [ [ data ,] handler ] )

하나 이상의 매개변수가 지정되면 스크롤 이벤트의 핸들러 함수를 바인딩한다는 의미이고, 매개변수가 지정되지 않으면 스크롤 이벤트가 트리거된다는 의미입니다. .

Parameters

매개변수 설명

data 선택사항/이벤트가 트리거될 때 event.data를 통해 이벤트 처리 함수에 전달되어야 하는 모든 유형의 데이터입니다.

handler 선택적/이벤트 핸들러 함수는 함수 유형에 따라 지정됩니다.

jQuery 1.4.3 새로운 지원: scroll()은 데이터 매개변수를 지원합니다.

매개변수 핸들러의 이 항목은 현재 DOM 요소를 가리킵니다. scroll()은 또한 핸들러에 매개변수(현재 이벤트를 나타내는 Event 객체)를 전달합니다.

함수 핸들러의 반환 값이 false인 경우 요소의 기본 이벤트 동작을 방지하고 해당 이벤트가 DOM 트리에서 버블링되는 것을 중지한다는 의미입니다. 예를 들어, 3499910bf9dac5ae3c52d5ede7383485 링크의 클릭 이벤트 핸들러 기능이 false를 반환하는 경우 해당 링크의 기본 URL 점프 동작을 방지할 수 있습니다. ff9c23ada1bcecdd1a0fb5d5a0f18437양식의 스크롤 이벤트 핸들러는 false를 반환하며, 이는 양식의 기본 양식 제출 동작을 방지할 수 있습니다.

반환 값

scroll()함수의 반환 값은 jQuery 유형이며 현재 jQuery 개체 자체를 반환합니다.

예제 및 설명

다음 HTML 샘플 코드를 참조하세요.

<div id="msg" style="height: 3000px;" ></div>
现在,我们为window对象的scroll事件绑定处理函数(可以绑定多个,触发时按照绑定顺序依次执行):
$(window).scroll( function(event){
    $("#msg").append( $(this).scrollTop() + &#39;<br>&#39; );
} );
// 触发window对象的scroll事件
// $(window).scroll( );

이벤트 핸들러 함수에 몇 가지 추가 데이터를 전달할 수도 있습니다. 또한 이벤트 처리 기능을 위해 jQuery가 전달한 매개변수 Event 객체를 통해 현재 이벤트에 대한 관련 정보(예: 이벤트 유형, 이벤트를 트리거한 DOM 요소, 추가 데이터 등)를 얻을 수 있습니다.

var maxScrollTop = 1000;
// 向下滚动到据顶部超过1000px时,回到顶部
$(window).scroll( maxScrollTop, function(event){
    var $me = $(this);
    if( $me.scrollTop() > event.data ){
        $me.scrollTop( 0 );
    }
} );

위 내용은 jQuery.scroll() 함수에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.