JSFiddle - React, Tailwind, and code Playground
by tcuttrissweb
HTML
<html>
<body>
<div id="player">
</div>
</body>
</html>
CSS
#player {
width: 580px;
height: 280px;
overflow: hidden;
background: white;
position: relative;
border: solid 2px gray;
padding: 5px;
}
.youtube .carousel {
width: 230px;
height: 100%;
overflow: auto;
position: absolute;
right: 0px;
z-index: 3;
}
.youtube .thumbnail {
margin: 2px;
width: 100px;
border: 1px solid black;
}
.youtube iframe.player {
width: 338px;
height: 278px;
overflow: auto;
border: 0;
}
.yt-descript {
color: #000;
display:block;
height:100px;
}
.carItemContain{
width:;
height:100px;
}
JavaScript
/*
Copyright 2011 : Simone Gianni <[email protected]>
-- update by tcuttrissweb --
adds in title besdie thumbs in carousel.
adjusted css from the original to make room for this
allows resizing
to adjust size of the player adjust the css for:
.youtube iframe.player width / height accordingly.
Released under The Apache License 2.0
http://www.apache.org/licenses/LICENSE-2.0
*/
(function() {
function createPlayer(jqe, video, options) {
var ifr = $('iframe', jqe);
if (ifr.length === 0) {
ifr = $('<iframe scrolling="no">');
ifr.addClass('player');
}
var src = 'http://www.youtube.com/embed/' + video.id;
if (options.playopts) {
src += '?';
for (var k in options.playopts) {
src += k + '=' + options.playopts[k] + '&';
}
src += '_a=b';
}
ifr.attr('src', src);
jqe.append(ifr);
}
function createCarousel(jqe, videos, options) {
var car = $('div.carousel', jqe);
if (car.length === 0) {
car = $('<div>');
car.addClass('carousel');
jqe.append(car);
}
$.each(videos, function(i, video) {
options.thumbnail(car, video, options);
});
}
function createThumbnail(jqe, video, options) {
var imgurl = video.thumbnails[0].url;
var img = $('img[src="' + imgurl + '"]');
var desc;
var container;
if (img.length !== 0) return;
img = $('<img align="left">');
img.addClass('thumbnail');
jqe.append(img);
img.attr('src', imgurl);
img.attr('title', video.title);
img.click(function() {
options.player(options.maindiv, video, $.extend(true, {}, options, {
playopts: {
autoplay: 1
}
}));
});
desk = $('<p class="yt-descript">' + video.title +...