youtube icon
by Alex Alexandrov
HTML
<div id="player"></div>
<div id="thumbnail_container" class="thumbnail_container">
<img class="thumbnail" id="thumbnail" />
<a class="start-video"><img width="64" src="http://image.flaticon.com/icons/png/512/0/375.png" style="filter: invert(100%); -webkit-filter: invert(100%);"></a>
</div>
CSS
.start-video {
position: absolute;
top: 40%;
padding: 12px;
left: 40%;
opacity: .3;
cursor: pointer;
transition: all 0.3s;
}
.start-video:hover {
opacity: 1;
-webkit-filter: brightness (1);
}
div.thumbnail_container {
width: 480px;
height: 360px;
overflow: hidden;
position: relative;
background-color: #000;
}
img.thumbnail {
opacity: 0.5;
height: auto;
width: 100%;
}
JavaScript
var tag = document.createElement('script');
tag.src = "//www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
onYouTubeIframeAPIReady = function () {
player = new YT.Player('player', {
height: '360',
width: '480',
videoId: 'P6k2ghtbhoU',
playerVars: {
'autoplay': 0,
'rel': 0,
'showinfo': 0
},
events: {
'onStateChange': onPlayerStateChange
}
});
}
var p = document.getElementById ("player");
$(p).hide();
var t = document.getElementById ("thumbnail");
t.src = "http://img.youtube.com/vi/P6k2ghtbhoU/0.jpg";
onPlayerStateChange = function (event) {
if (event.data == YT.PlayerState.ENDED) {
$('.start-video').fadeIn('normal');
}
}
$(document).on('click', '.start-video', function () {
$(this).hide();
$("#player").show();
$("#thumbnail_container").hide();
player.playVideo();
});