w0bm.com v1.5z FULL.RETARD.BUILD.BUT.STILL.WORKS
This commit is contained in:
257
public/njum/js/floatvids.js
Normal file
257
public/njum/js/floatvids.js
Normal file
@@ -0,0 +1,257 @@
|
||||
//var $window = $(window);
|
||||
//var $videoWrap = $('.video-wrap');
|
||||
//var $video = $('.video');
|
||||
//var videoHeight = $video.outerHeight();
|
||||
//
|
||||
//$window.on('scroll', function() {
|
||||
// var windowScrollTop = $window.scrollTop();
|
||||
// var videoBottom = videoHeight + $videoWrap.offset().top;
|
||||
//
|
||||
// if (windowScrollTop > videoBottom) {
|
||||
// $videoWrap.height(videoHeight);
|
||||
// $video.addClass('stuck');
|
||||
// } else {
|
||||
// $videoWrap.height('auto');
|
||||
// $video.removeClass('stuck');
|
||||
// }
|
||||
//});
|
||||
|
||||
var ytIframeList, videoList, currentPlayer, closeButton, gradientOverlay, fullScreenIcon;
|
||||
var inViewPortBol = true;
|
||||
var ytIframeIdList = [];
|
||||
var ytVideoId = [];
|
||||
var ytPlayerId = [];
|
||||
var videoTagId = [];
|
||||
var events = new Array("pause", "playing");
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
|
||||
/*Adding Youtube Iframe API to body*/
|
||||
|
||||
|
||||
/*Getting all the iframe from the Page and finding out valid URL and ID. Then creating instance of players*/
|
||||
|
||||
|
||||
|
||||
/*Getting Video Tag List and Creating instances*/
|
||||
|
||||
videoList = document.getElementsByTagName("video");
|
||||
for (i = 0; i < videoList.length; i++) {
|
||||
videoList[i].id = "video-wrap" + i;
|
||||
videoTagId.push("video" + i);
|
||||
videoTagId[i] = document.getElementById(videoList[i].id);
|
||||
|
||||
}
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
for (var j in events) {
|
||||
videoTagId[i].addEventListener(events[j], videoTagPlayerhandler, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
||||
window.onYouTubeIframeAPIReady = function () {
|
||||
for (i = 0; i < ytIframeIdList.length; i++) {
|
||||
ytPlayerId[i] = new YT.Player(ytIframeList[i].id, {
|
||||
events: {
|
||||
"onStateChange": onPlayerStateChange
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
function videoTagPlayerhandler(e) {
|
||||
/*Play Rules*/
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (e.target == videoTagId[i]) {
|
||||
if (e.type == "playing") {
|
||||
currentPlayer = videoTagId[i];
|
||||
videoTagId[i].classList.remove("is-paused");
|
||||
videoTagId[i].classList.add("is-playing");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (currentPlayer == videoTagId[i]) {
|
||||
continue;
|
||||
}
|
||||
videoTagId[i].classList.remove("is-playing");
|
||||
videoTagId[i].classList.add("is-paused");
|
||||
}
|
||||
|
||||
/*Pause Rules*/
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (e.target == videoTagId[i]) {
|
||||
if (e.type == "pause") {
|
||||
videoTagId[i].classList.add("is-paused");
|
||||
videoTagId[i].classList.remove("is-playing");
|
||||
videoTagId[i].pause();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*Sticky Rules*/
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (videoTagId[i].classList.contains("is-sticky")) {
|
||||
videoTagId[i].pause();
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < ytPlayerId.length; i++) {
|
||||
if (ytVideoId[i].classList.contains("is-sticky")) {
|
||||
ytPlayerId[i].pauseVideo();
|
||||
fullScreenIcon.style.display = "none";
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/*End Rules*/
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (e.target == videoTagId[i]) {
|
||||
if (e.type == "ended") {
|
||||
videoTagId[i].classList.remove("is-playing");
|
||||
videoTagId[i].classList.remove("is-paused");
|
||||
}
|
||||
}
|
||||
}
|
||||
videohandler();
|
||||
};
|
||||
|
||||
function onPlayerStateChange(event) {
|
||||
|
||||
/*Play Rules*/
|
||||
|
||||
for (i = 0; i < ytPlayerId.length; i++) {
|
||||
if (ytPlayerId[i].getPlayerState() === 1) {
|
||||
currentPlayer = ytVideoId[i];
|
||||
ytVideoId[i].classList.remove("is-paused");
|
||||
ytVideoId[i].classList.add("is-playing");
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (i = 0; i < ytVideoId.length; i++) {
|
||||
if (currentPlayer == ytVideoId[i]) {
|
||||
continue;
|
||||
}
|
||||
ytVideoId[i].classList.remove("is-playing");
|
||||
ytVideoId[i].classList.add("is-paused");
|
||||
}
|
||||
|
||||
/*Pause Rules*/
|
||||
|
||||
for (i = 0; i < ytPlayerId.length; i++) {
|
||||
if (ytPlayerId[i].getPlayerState() === 2) {
|
||||
ytVideoId[i].classList.add("is-paused");
|
||||
ytVideoId[i].classList.remove("is-playing");
|
||||
ytPlayerId[i].pauseVideo();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*Sticky Rules*/
|
||||
|
||||
for (i = 0; i < ytPlayerId.length; i++) {
|
||||
if (ytVideoId[i].classList.contains("is-sticky")) {
|
||||
ytPlayerId[i].pauseVideo();
|
||||
fullScreenIcon.style.display = "none";
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (videoTagId[i].classList.contains("is-sticky")) {
|
||||
videoTagId[i].pause();
|
||||
fullScreenIcon.style.display = "none";
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/*End Rule*/
|
||||
|
||||
for (i = 0; i < ytPlayerId.length; i++) {
|
||||
if (ytPlayerId[i].getPlayerState() === 0) {
|
||||
ytVideoId[i].classList.remove("is-playing");
|
||||
ytVideoId[i].classList.remove("is-paused");
|
||||
}
|
||||
}
|
||||
videohandler();
|
||||
}
|
||||
|
||||
function videohandler() {
|
||||
|
||||
if (currentPlayer) {
|
||||
if (closeButton) {
|
||||
closeButton.addEventListener("click", function (e) {
|
||||
if (currentPlayer.classList.contains("is-sticky")) {
|
||||
currentPlayer.classList.remove("is-sticky");
|
||||
|
||||
for (i = 0; i < ytVideoId.length; i++) {
|
||||
if (currentPlayer == ytVideoId[i]) {
|
||||
ytPlayerId[i].pauseVideo();
|
||||
}
|
||||
}
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (currentPlayer == videoTagId[i]) {
|
||||
videoTagId[i].pause();
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
for (i = 0; i < ytVideoId.length; i++) {
|
||||
if (currentPlayer != ytVideoId[i]) {
|
||||
ytVideoId[i].classList.remove("is-sticky");
|
||||
}
|
||||
}
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (currentPlayer != videoTagId[i]) {
|
||||
videoTagId[i].classList.remove("is-sticky");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll', function () {
|
||||
|
||||
inViewPortBol = inViewPort();
|
||||
if (currentPlayer) {
|
||||
if (!inViewPortBol && currentPlayer.classList.contains("is-playing")) {
|
||||
for (i = 0; i < ytVideoId.length; i++) {
|
||||
if (currentPlayer != ytVideoId[i]) {
|
||||
ytVideoId[i].classList.remove("is-sticky");
|
||||
}
|
||||
}
|
||||
for (i = 0; i < videoTagId.length; i++) {
|
||||
if (currentPlayer != videoTagId[i]) {
|
||||
videoTagId[i].classList.remove("is-sticky");
|
||||
}
|
||||
}
|
||||
currentPlayer.classList.add("is-sticky");
|
||||
} else {
|
||||
if (currentPlayer.classList.contains("is-sticky")) {
|
||||
currentPlayer.classList.remove("is-sticky");
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
function inViewPort() {
|
||||
|
||||
if (currentPlayer) {
|
||||
var videoParentLocal = currentPlayer.parentElement.getBoundingClientRect();
|
||||
return videoParentLocal.bottom > 0 &&
|
||||
videoParentLocal.right > 0 &&
|
||||
videoParentLocal.left < (window.innerWidth || document.documentElement.clientWidth) &&
|
||||
videoParentLocal.top < (window.innerHeight || document.documentElement.clientHeight);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user