컴퓨터 사양이 좋아지고 네트워크 속도가 빨라지면서, 홈페이지의 배경으로 동영상을 사용하는 곳이 많아지고 있습니다. 동영상을 배경으로 사용하는 방법은, 서버에 동영상을 올려놓고 video 태그로 넣는 방법과 유튜브에 업로드하고 불러오는 방법이 있습니다.
유튜브를 이용하면 트래픽 비용을 줄일 수 있다는 장점이 있는데, 영상 제목이나 콘트롤 바, 공유 등 불필요한 내용까지 보여준다는 단점도 있습니다. 그 단점을 해결해주는 것이 jquery.mb.YTPlayer입니다. 영상만 깔끔하게 보여줄 수 있게 도와줍니다.
jquery.mb.YTPlayer는 다운로드 또는 CDN 서비스로 사용할 수 있습니다.
다음 영상을 배경으로 넣어보겠습니다.
전체 코드는 다음과 같습니다.
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>YTPlayer</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery.mb.YTPlayer/3.3.1/css/jquery.mb.YTPlayer.min.css">
<script src="//code.jquery.com/jquery-3.3.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mb.YTPlayer/3.3.1/jquery.mb.YTPlayer.min.js"></script>
<script>
jQuery( function() {
jQuery( '#background' ).YTPlayer();
} );
</script>
</head>
<body>
<div id="background" class="player" data-property="{
videoURL:'https://youtu.be/KKjuRJh_3LY',
mute: true,
showControls: false,
useOnMobile: true,
quality: 'highres',
containment: 'body',
loop: true,
autoPlay: true,
stopMovieOnBlur: false,
startAt: 0,
opacity: 1
}"></div>
</body>
</html>
웹브라우저를 꽉 채워서 영상을 재생합니다.
하나씩 분석해보면…
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery.mb.YTPlayer/3.3.1/css/jquery.mb.YTPlayer.min.css">
<script src="//code.jquery.com/jquery-3.3.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mb.YTPlayer/3.3.1/jquery.mb.YTPlayer.min.js"></script>
<script>
jQuery( function() {
jQuery( '#background' ).YTPlayer();
} );
</script>
<div id="background" class="player" data-property="{
videoURL:'https://youtu.be/KKjuRJh_3LY',
mute: true,
showControls: false,
useOnMobile: true,
quality: 'highres',
containment: 'body',
loop: true,
autoPlay: true,
stopMovieOnBlur: false,
startAt: 0,
opacity: 1
}"></div>
특정 요소 안에 영상을 넣는 예제입니다.
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>YTPlayer</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery.mb.YTPlayer/3.3.1/css/jquery.mb.YTPlayer.min.css">
<script src="//code.jquery.com/jquery-3.3.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mb.YTPlayer/3.3.1/jquery.mb.YTPlayer.min.js"></script>
<script>
jQuery( function() {
jQuery( '#background' ).YTPlayer();
} );
</script>
<style>
#background { z-index: -1; }
</style>
</head>
<body>
<div id="background" class="player" data-property="{
videoURL:'https://youtu.be/KKjuRJh_3LY',
mute: true,
showControls: false,
useOnMobile: true,
quality: 'highres',
containment: 'self',
loop: true,
autoPlay: true,
stopMovieOnBlur: false,
startAt: 0,
opacity: 1
}"></div>
</body>
</html>
첫번째 예제와 다른 점은…
<style>
#background { z-index: -1; }
</style>
containment: 'self',
다음은 동영상 위에 텍스트를 추가한 간단한 예제입니다.
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>YTPlayer</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery.mb.YTPlayer/3.3.1/css/jquery.mb.YTPlayer.min.css">
<script src="//code.jquery.com/jquery-3.3.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mb.YTPlayer/3.3.1/jquery.mb.YTPlayer.min.js"></script>
<script>
jQuery( function() {
jQuery( '#background' ).YTPlayer();
} );
</script>
<style>
body { margin: 0px; }
.jb-box { position: relative; }
#background { z-index: -1; }
.jb-text { position: absolute; top: 50%; left: 50%; width: 400px; margin-left: -200px; text-align: center; color: #ffffff; }
</style>
</head>
<body>
<div class="jb-box">
<div id="background" class="player" data-property="{
videoURL:'https://youtu.be/KKjuRJh_3LY',
mute: true,
showControls: false,
useOnMobile: true,
quality: 'highres',
containment: 'self',
loop: true,
autoPlay: true,
stopMovieOnBlur: false,
startAt: 0,
opacity: 1
}"></div>
<div class="jb-text">
<h1>Lorem Ipsum Dolor</h1>
</div>
</div>
</body>
</html>
#jquery #plugin #jquery.mb.ytplayer #codingfactory