2020 06/01 20:36
Category : メモ帳
doc = document;
Fid = a => typeof(a) == "object" ? a : doc.getElementById(a);
Ftag = (...e) => (e.length > 1 ? Fid(e[0]) : doc).getElementsByTagName(e[e.length - 1]);
Fce = a => doc.createElement(a);
Fcn = (...e) => (e.length > 1 ? Fid(e[0]) : doc).getElementsByClassName(e[e.length - 1]);
tubeEntry = () => {
};
{
let o = Fce("script");
o.src = "https://www.youtube.com/iframe_api";
let par = Ftag("script")[0];
par.parentNode.insertBefore(o, par);
}
player = "";
done = false;
onYouTubeIframeAPIReady = () => {
player = new YT.Player('player');
};
onPlayerStateChange = e => {
if(e.data == YT.PlayerState.PLAYING && !done) alert("ok");
done = true;
};
runPause = obj => {
const cl = obj.classList;
const isVis = cl.contains("vis");
obj.textContent = isVis ? "再生" : "停止";
cl.toggle("vis");
Fid("tubeDisp").classList.toggle("vis");
setTimeout(() => {
isVis ? player.pauseVideo() : player.playVideo();
}, 1500);
};
entry = () => {
let css = doc.createElement("style");
css.type = "text/css";
css.innerHTML = Fid("tubeCssDisp").textContent;
doc.body.append(css);
doc.title = "💙💛youTuveの考察 1.0";
createIframe(selNo);
Fid("tubeCon").innerHTML = `\x3cspan id="play" onclick="runPause(this)">再生\x3c/span>
`;
Fid("imgListDisp").innerHTML = "default mqdefault hqdefault sddefault maxresdefault".
replace(/([a-z]+) */g, `\x3ca href="javascript:createImage('$1')">$1\x3c/a> `);
};
createIframe = no => {
vid = "RtPwBk0pqKE Sg-ucNFd_0s".split(" ")[no];
const host = "http://www.eclat.cc";
const tube = "https://www.youtube.com/embed/";
Fid("tubeDisp").innerHTML = `\x3ciframe id="player" width="560" height="315"
src="${tube}${vid}?enablejsapi=1&origin=${host}" frameborder="0"
allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen>\x3c/iframe>`;
};
createImage = e => {
const uri = "http://img.youtube.com/vi/RtPwBk0pqKE/" + e + ".jpg";
Fid("imgDisp").innerHTML = "\x3cimg src='" + uri + "' alt='' />";
};
// GXqVA3tFeNc
entry();
🧡画像の話
動画には生成された各種のサイズの画像がある。
default.jpg
mqdefault.jpg 320 × 180
hqdefault.jpg 480 × 360
sddefault.jpg 640 × 480
maxresdefault.jpg 1280 × 720
#tubeDisp {
display:inline-block;
position:relative;
margin-bottom:1rem;
}
#tubeDisp::before, #tubeDisp::after {
display:inline-block;
content:"";
position:absolute; top:0;
height:315px;
width:280px;
background-color:#ffefff;
z-index:20;
transition:width 1s;
}
#tubeDisp::before {
left;0;
}
#tubeDisp::after {
right:0;
}
#tubeDisp.vis::before {
width:0px;
}
#tubeDisp.vis::after {
width:0px;
}
#imgListDisp a {
display:inline-block;
padding:.5em 1em;
border-radius:6px;
border:1px solid #ccc;
box-shadow:3px 3px 3px #ccc;
}
#tubeCon span {
display:inline-block;
padding:.5rem 1rem;
border-radius:6px;
border:1px solid #ccc;
box-shadow:3px 3px 3px #ccc;
cursor:pointer;
}
#play {
transition:background-color .5s;
}
#play.vis {
background-color:#3f3;
}
#play:hover {
background-color:#ffc;
}