2026, 새로운 도약을 시작합니다.

jquery resize, scroll 함수 관련 질문이있습니다. 채택완료

Copy


$(document).ready(function() {

    function chkWidth(){

    //scroll head

        var width = $(window).width(); //realtime Width Value

        var con = $(".head_pac_scroll");

        if(width= 151){

                    con.stop().fadeIn(200);

                }else if(position 

원문 스크립트는 이렇게 작성하였습니다.

문제는 if ~ else 문에서 else 문이 한번 실행되면 scroll 함수가 if 일때도 실행이됩니다.ㅜㅜ

어느 부분이 잘못되었는지 찾기가 어려워서 질문올려봅니다..ㅜㅜ

답변 1개

채택된 답변
+20 포인트

스크립트 가 애매합니다.

Copy


$(document).ready(function() {

    function chkWidth(){

    //scroll head

        var width = $(window).width(); //realtime Width Value

        var con = $(".head_pac_scroll");

        if(width= 151){

                    con.stop().fadeIn(200);

                }else if(position 
로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

헉 이해하기쉽게 주석까지 달아주시다니 감사합니다!!
그런데 스크롤때 position 의 값이 실시간으로 계속 변경되서 if 안의 내용처럼 position 의 값이 151 이상이면 con 을 보여주고, 그 이하이면 con 을 사라지게 해야하는데, 플래토님께서 작성해주신 스크립트는 scroll 값이 고정적으로 되서 새로고침을 계속 해주어야하는데, 이같은 경우는 어떻게 해결해야하나요..??
@경하귀요밍
제가 손봐드린건

이벤트가 작동하는 시점만 변경한것이라서.
작동되는 형태를 실험해본건 아닙니다.

스크롤이 고정적으로 되는건, 샘플URL을 확인하면서 확인해야할듯 한데요
$(document).ready(function($){
function chkWidth(){
//scroll head
var width = $(window).width(); //realtime Width Value
var con = $(".head_pac_scroll");
console.log(width);
if(width<1009){
$(window).off("scroll"); //scrollevent off
con.css("display","none");
return false;
}else{
$(window).on("scroll",function(e){ //scroll event
var position = $(window).scrollTop();

if(position >= 151){
con.stop().fadeIn(200);
}else if(position <= 150){
con.stop().fadeOut(100);
}
return false;
});
}
}

chkWidth() ;

$(window).resize(chkWidth);
});

이렇게해서 해결했습니다!! 도움주셔서 고맙습니다!

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고