Not so smooth. :-(
A Pen by Janne Leppänen on CodePen.
Not so smooth. :-(
A Pen by Janne Leppänen on CodePen.
| <header class="site-header"> | |
| <iframe id="yt-player" src="https://www.youtube.com/embed/iApVVKsF94E?autoplay=1&modestbranding=1&controls=0&showinfo=0&rel=0&enablejsapi=1&version=3&loop=0&playerapiid=ytplayer&allowfullscreen=true&wmode=transparent&iv_load_policy=3&html5=1&playlist=iApVVKsF94E&disablekb=true" frameborder="0"></iframe> | |
| <div class="video-overlay"></div> | |
| <div class="content"> | |
| <h1>Header Title</h1> | |
| </div> | |
| </header> | |
| <div class="site-content"> | |
| <h1>This is site content</h1> | |
| </div> |
| $(window).on('resize load', function() { | |
| $('.site-header iframe').each(function() { | |
| var self = $(this); | |
| var container = self.parent(); | |
| self.css({ | |
| width: container.width() + "px", | |
| height: container.width() * (9/16) + 'px', | |
| position: 'absolute', | |
| marginTop: -container.width() * (9/32) + 'px', | |
| top: '50%' | |
| }); | |
| }); | |
| }); | |
| // Load the IFrame Player API code asynchronously. | |
| var tag = document.createElement('script'); | |
| tag.src = "https://www.youtube.com/player_api"; | |
| var firstScriptTag = document.getElementsByTagName('script')[0]; | |
| firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); | |
| var player; | |
| function onYouTubePlayerAPIReady() { | |
| player = new YT.Player('yt-player', { | |
| autoplay : 1, | |
| videoId: 'yZM5VAKi5vU', | |
| playerVars : { | |
| 'autoplay' : 1, | |
| 'rel' : 0, | |
| 'showinfo' : 0, | |
| 'showsearch' : 0, | |
| 'controls' : 0, | |
| 'loop' : 1, | |
| 'enablejsapi' : 1, | |
| 'playlist': 'yZM5VAKi5vU' | |
| }, | |
| events: { | |
| "onReady": onPlayerReady, | |
| //"onStateChange": onPlayerStateChange | |
| } | |
| }); | |
| } | |
| function onPlayerReady(event) { | |
| event.target.mute(); | |
| event.target.playVideo(); | |
| } | |
| function onPlayerStateChange(event) { | |
| var id = 'yZM5VAKi5vU'; | |
| if(event.data === YT.PlayerState.ENDED){ | |
| player.loadVideoById(id); | |
| } | |
| } |
| <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> | |
| <script src="https://apis.google.com/js/client.js?onload=googleApiClientReady"></script> |
| @import "lesshat"; | |
| .site-header { | |
| background: #222; | |
| overflow: hidden; | |
| position: relative; | |
| } | |
| .video-overlay { | |
| position: absolute; | |
| top: 0; bottom: 0; left: 0; right: 0; | |
| background: #000; | |
| opacity: 0.5; | |
| } | |
| .site-header .content { | |
| position: relative; | |
| z-index: 100; | |
| text-align: center; | |
| padding: 50px 0; | |
| color: #fff; | |
| font-size: 48px; | |
| text-shadow: 0 0 10px rgba(0,0,0,0.2); | |
| text-transform: uppercase; | |
| } | |
| .site-content { | |
| padding: 40px 0; | |
| text-align: center; | |
| } |