이벤트 핸들러를 사용하지 않고 DOM이로드 되 자마자 특정 클래스의 요소에서 함수를 실행합니다.

StackOverflow https://stackoverflow.com/questions/2035612

문제

특정 클래스의 모든 요소에서 실행하려는 간단한 기능이 있습니다. DOM이로드 되 자마자이 기능이 실행되기를 원합니다. 이벤트 핸들러가 아닙니다.

아래는 호버와 같은 이벤트 핸들러에서 실행되는 코드입니다. DOM이로드 되 자마자 어떻게 실행합니까?

$(document).ready(function(){
    var displayname = $(".displayname");

    function alignSpans(){
        var spanheight = this.offsetHeight;
        var cssbottom = spanheight + "px";
        this.style.bottom = cssbottom; 
    }

    displayname.hover(alignSpans);

});

displayname.alignSpans(); 작동하지 않습니다

도움이 되었습니까?

해결책

가정합니다 displayname jQuery 객체입니다. 사용할 수 있습니다 .each() 콜백 함수를 사용하여 호출합니다 this 포함 된 DOM 요소 (이벤트 핸들러와 매우 편리하게 동일한 규칙).

displayname.each(alignSpans);

다른 팁

그것이 .Each () 함수의 것입니다. 코드도 좀 더 효율적으로 만들었습니다.

$(document).ready(function(){
    $(".displayname").each(function() {
        $(this).css("bottom", $(this).height()); 
    });
});
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top