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

제이쿼리로 video태그 동영상 재생,정지 하려는데 오류 뜨네요 왜일까요ㅠㅠ 채택완료

해당 영역에서 동영상 재생되게 하려고 코드 작성했는데 아래와 같은 오류 메시지가 뜹니다.

초보라서 간단한 코드인데도 어렵네요. 도움부탁드립니다ㅠㅠ

'Uncaught TypeError: $(...).pause is not a function'

2072948020_1706854992.3008.png

jquery코드

Copy


$(window).scroll(function() {

        var bodyOffset = $(window).offset();

        if ($(".wrap3").scrollTop() >= $(window).offsetHeight) {

            $('.main_video').addClass('start');

            $('.start').play();

        } else {

        $('.start').pause();

        $('.main_video').removeClass('start');

        }

    });

혹시 몰라서 html도 함께 첨부드립니다.

Copy

답변 4개

채택된 답변
+20 포인트

에러 발생을 막기 위해서는 다음처럼 수정되어야 합니다.

Copy


            if ($('.main_video').hasClass('start') == true) {

                $('.start').pause();

                $('.main_video').removeClass('start');

            }

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

안녕하세요! 도와주신 덕분에 콘솔에서 오류메시지 사라졌네요 감사합니다 ㅠㅠ 이렇게 따로 작성해야하는군요..

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

비디오는  main_video라는 클라쓰명을 원래 가지고 있으니 그것으로 계속 접근해 보세요

추가된 클래쓰명으로 제어를 할때 간혹 동적 이벤트 추가가 잘 이뤄지지 않아서 안되는 경우가 있습니다 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

넵 도움주셔서 감사합니다~!

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

로그인 후 평가할 수 있습니다

답변에 대한 댓글 5개

문법 참고해봐도 오류가 계속 뜨네요 ㅠㅠ
video 태그가 다릅니다.
<video>
<source>
</video>
형태로 맞추면 될 듯 합니다.
생각못했던 부분인데 도움 감사합니다..!! 다만, 해당 부분 형식 수정해봐도 동일한 오류가 콘솔에 계속 뜨네욥.. play,pause기능이 작동은 하는 것 같은데 다른 부분이 틀렸을까요?ㅠㅠ

[code]
<video class="main_video" preload="none" autoplay loop muted playsinline webkit-playsinline>
<source src="<?php echo G5_THEME_URL ?>/main/video/mainvideo.mp4" type="video/mp4">
</video>
[/code]
jquery 버전이 낮아서 그럴 수도 있지 않을까 싶습니다.

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
추가 또는 대체
도움주셔서 감사합니다~!

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

$('.start')[0].pause(); 으로해보세요
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

안녕하세요. 알려주신 방법대로 수정해봐도 그대로 입니다 ㅜㅜ 참고로 그 전에도 get(0).play(); 이런 식으로 문법을 맞췄었는데, 오류가 나더라구요. 뭐때문일까요ㅜㅜ

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

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

로그인
🐛 버그신고