芝麻web文件管理V1.00
编辑当前文件:/home/seolotod/critterchoice.com/wp-content/themes/rehub-theme/js/video_playlist.js
/** * function to check the phone screen */ var rhDetect = {}; ( function(){ "use strict"; rhDetect = { isIe8: false, isIe9 : false, isIe10 : false, isIe11 : false, isIe : false, isSafari : false, isChrome : false, isIpad : false, isTouchDevice : false, hasHistory : false, isPhoneScreen : false, isIos : false, isAndroid : false, isOsx : false, isFirefox : false, isWinOs : false, isMobileDevice:false, htmlJqueryObj:null, runIsPhoneScreen: function () { if ( (jQuery(window).width() < 768 || jQuery(window).height() < 768) && false === rhDetect.isIpad ) { rhDetect.isPhoneScreen = true; } else { rhDetect.isPhoneScreen = false; } }, set: function (detector_name, value) { rhDetect[detector_name] = value; } }; rhDetect.htmlJqueryObj = jQuery('html'); if ( -1 !== navigator.appVersion.indexOf("Win") ) { rhDetect.set('isWinOs', true); } if ( !!('ontouchstart' in window) && !rhDetect.isWinOs ) { rhDetect.set('isTouchDevice', true); } if ( rhDetect.htmlJqueryObj.is('.ie8') ) { rhDetect.set('isIe8', true); rhDetect.set('isIe', true); } if ( rhDetect.htmlJqueryObj.is('.ie9') ) { rhDetect.set('isIe9', true); rhDetect.set('isIe', true); } if( navigator.userAgent.indexOf("MSIE 10.0") > -1 ){ rhDetect.set('isIe10', true); rhDetect.set('isIe', true); } if ( !!navigator.userAgent.match(/Trident.*rv\:11\./) ){ rhDetect.set('isIe11', true); } if (window.history && window.history.pushState) { rhDetect.set('hasHistory', true); } if ( -1 !== navigator.userAgent.indexOf('Safari') && -1 === navigator.userAgent.indexOf('Chrome') ) { rhDetect.set('isSafari', true); } if (/chrom(e|ium)/.test(navigator.userAgent.toLowerCase())) { rhDetect.set('isChrome', true); } if ( null !== navigator.userAgent.match(/iPad/i)) { rhDetect.set('isIpad', true); } if (/(iPad|iPhone|iPod)/g.test( navigator.userAgent )) { rhDetect.set('isIos', true); } if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) { rhDetect.set('isMobileDevice', true); } rhDetect.runIsPhoneScreen(); var user_agent = navigator.userAgent.toLowerCase(); if ( user_agent.indexOf("android") > -1 ) { rhDetect.set('isAndroid', true); } if ( -1 !== navigator.userAgent.indexOf('Mac OS X') ) { rhDetect.set('isOsx', true); } if ( -1 !== navigator.userAgent.indexOf('Firefox') ) { rhDetect.set('isFirefox', true); } })(); /* * $f used by vimeo in rh_video shortcode * */ "use strict"; var Froogaloop=function(){ function e(a){ return new e.fn.init(a) } function h(a,c,b){ if(!b.contentWindow.postMessage)return!1; var f=b.getAttribute("src").split("?")[0],a=JSON.stringify({method:a,value:c}); "//"===f.substr(0,2)&&(f=window.location.protocol+f); b.contentWindow.postMessage(a,f) } function j(a){ var c,b; try{c=JSON.parse(a.data),b=c.event||c.method}catch(f){} "ready"==b&&!i&&(i=!0); if(a.origin!=k)return!1; var a=c.value,e=c.data,g=""===g?null:c.player_id; c=g?d[g][b]:d[b]; b=[]; if(!c)return!1; void 0!==a&&b.push(a); e&&b.push(e); g&&b.push(g); return 0
b)c+=a[b]; else break; 2>b&&(c+="/") } k=c; return this }, api:function(a,c){ if(!this.element||!a)return!1; var b=this.element,f=""!==b.id?b.id:null,d=!c||!c.constructor||!c.call||!c.apply?c:null,e=c&&c.constructor&&c.call&&c.apply?c:null;e&&l(a,e,f);h(a,d,b); return this }, addEvent:function(a,c){ if(!this.element)return!1; var b=this.element,d=""!==b.id?b.id:null; l(a,c,d); "ready"!=a?h("addEventListener",a,b):"ready"==a&&i&&c.call(null,d); return this }, removeEvent:function(a){ if(!this.element)return!1; var c=this.element,b;a:{ if((b=""!==c.id?c.id:null)&&d[b]){ if(!d[b][a]){b=!1; break a}d[b][a]=null }else{ if(!d[a]){ b=!1; break a } d[a]=null } b=!0 } "ready"!=a&&b&&h("removeEventListener",a,c) } }; e.fn.init.prototype=e.fn; window.addEventListener?window.addEventListener("message",j,!1):window.attachEvent("onmessage",j); return window.Froogaloop=window.$f=e }(); /* video_playlist.js v1.1 */ var rhYoutubePlayer = {}; var rhVimeoPlaylistObj = {}; var rhPlaylistGeneralFunctions = {}; jQuery(window).on('load', function() { 'use strict'; jQuery(document).on("click", ".rh_click_video_youtube:not(.rh_video_currently_playing), .firstvid_youtube", function(e){ rhYoutubePlayer.rhPlaylistVideoAutoplayYoutube = 1; rhPlaylistGeneralFunctions.rhPlaylistAddPlayControl( '.rh_youtube_control' ); if(jQuery(this).hasClass('firstvid_youtube')){ rhYoutubePlayer.playVideo( jQuery( this ).attr( 'data-first-video' )); }else{ rhYoutubePlayer.playVideo( jQuery( this ).attr( 'id' ).substring( 3 ) ); } }); jQuery( '.rh_youtube_control' ).click(function(e){ e.stopPropagation(); if ( jQuery( this ).hasClass( 'rh-sp-video-play' ) ){ rhYoutubePlayer.rhPlaylistVideoAutoplayYoutube = 1; rhYoutubePlayer.rhPlaylistYoutubePlayVideo(); } else { rhYoutubePlayer.rhPlaylistYoutubePauseVideo(); } }); if ( jQuery( '.rh_wrapper_playlist_player_youtube' ).length > 0) { if ( '1' == jQuery( '.rh_wrapper_playlist_player_youtube').data( 'autoplay' ) ) { rhYoutubePlayer.rhPlaylistVideoAutoplayYoutube = 1; } var firstVideo = jQuery( '.rh_wrapper_playlist_player_youtube' ).data( 'first-video' ); if ( '' !== firstVideo ) { rhYoutubePlayer.rhPlaylistIdYoutubeVideoRunning = firstVideo; //rhYoutubePlayer.playVideo( firstVideo ); } } if ( '1' == jQuery( '.rh_wrapper_playlist_player_vimeo' ).data( 'autoplay' ) ) { rhVimeoPlaylistObj.rhPlaylistVideoAutoplayVimeo = 1; } jQuery(document).on("click", ".rh_click_video_vimeo:not(.rh_video_currently_playing), .firstvid_vimeo", function(e){ e.stopPropagation(); rhVimeoPlaylistObj.rhPlaylistVideoAutoplayVimeo = 1; rhPlaylistGeneralFunctions.rhPlaylistAddPlayControl( '.rh_vimeo_control' ); if(jQuery(this).hasClass('firstvid_vimeo')){ rhVimeoPlaylistObj.createPlayer( jQuery( this ).attr( 'data-first-video' ) ); }else{ rhVimeoPlaylistObj.createPlayer( jQuery( this ).attr( 'id' ).substring( 3 ) ); } }); if ( jQuery( '.rh_wrapper_playlist_player_vimeo' ).length > 0 ) { rhPlaylistGeneralFunctions.rhPlaylistAddPlayControl( '.rh_vimeo_control' ); //rhVimeoPlaylistObj.createPlayer( jQuery( '.rh_wrapper_playlist_player_vimeo' ).data('first-video' ) ); } jQuery( '.rh_vimeo_control' ).click(function(){ if ( jQuery( this ).hasClass( 'rh-sp-video-play' ) ) { rhVimeoPlaylistObj.rhPlaylistVideoAutoplayVimeo = 1; rhVimeoPlaylistObj.rhPlaylistPlayerVimeo.api( 'play' ); } else { rhVimeoPlaylistObj.rhPlaylistPlayerVimeo.api( 'pause' ); } }); }); (function() { 'use strict'; rhYoutubePlayer = { rhYtPlayer: '', rhPlayerContainer: 'player_youtube', rhPlaylistVideoAutoplayYoutube: 0, rhPlaylistIdYoutubeVideoRunning: '', playVideo: function( videoId ) { if ( 'undefined' === typeof( YT ) || 'undefined' === typeof( YT.Player ) ) { window.onYouTubePlayerAPIReady = function() { rhYoutubePlayer.loadPlayer( rhYoutubePlayer.rhPlayerContainer, videoId ); }; jQuery.getScript( 'https://www.youtube.com/player_api' ); } else { rhYoutubePlayer.loadPlayer( rhYoutubePlayer.rhPlayerContainer, videoId ); } }, loadPlayer: function( container, videoId ) { rhYoutubePlayer.rhPlaylistIdYoutubeVideoRunning = videoId; var current_video_name = rh_youtube_list_ids['rh_' + rhYoutubePlayer.rhPlaylistIdYoutubeVideoRunning]['title']; var current_video_time = rh_youtube_list_ids['rh_' + rhYoutubePlayer.rhPlaylistIdYoutubeVideoRunning]['time']; rhPlaylistGeneralFunctions.rhVideoPlaylistRemoveFocused( '.rh_click_video_youtube' ); jQuery( '#rh_' + videoId ).addClass( 'rh_video_currently_playing' ); rhYoutubePlayer.rhYtPlayer = ''; jQuery( '.rh_wrapper_playlist_player_youtube' ).html( '
' ); rhYoutubePlayer.rhYtPlayer = new YT.Player( container, { playerVars: { autoplay: rhYoutubePlayer.rhPlaylistVideoAutoplayYoutube }, height: '100%', width: '100%', videoId: videoId, events: { 'onReady': rhYoutubePlayer.onPlayerReady, 'onStateChange': rhYoutubePlayer.onPlayerStateChange } }); }, onPlayerStateChange: function( event ) { if ( event.data === YT.PlayerState.PLAYING ) { rhPlaylistGeneralFunctions.rhPlaylistAddPauseControl( '.rh_youtube_control' ); } else if ( event.data === YT.PlayerState.ENDED ) { rhPlaylistGeneralFunctions.rhPlaylistAddPlayControl( '.rh_youtube_control' ); rhYoutubePlayer.rhPlaylistVideoAutoplayYoutube = 1; var nextVideoId = rhPlaylistGeneralFunctions.rhPlaylistChooseNextVideo( [ rh_youtube_list_ids, rhYoutubePlayer.rhPlaylistIdYoutubeVideoRunning ] ); if ( '' !== nextVideoId ) { rhYoutubePlayer.playVideo( nextVideoId ); } } else if ( YT.PlayerState.PAUSED ) { rhPlaylistGeneralFunctions.rhPlaylistAddPlayControl( '.rh_youtube_control' ); } }, rhPlaylistYoutubeStopVideo: function() { rhYoutubePlayer.rhYtPlayer.stopVideo(); }, rhPlaylistYoutubePlayVideo: function() { if ( ! rhDetect.isMobileDevice ) { rhYoutubePlayer.rhYtPlayer.playVideo(); } }, rhPlaylistYoutubePauseVideo: function() { rhYoutubePlayer.rhYtPlayer.pauseVideo(); } }; //VIMEO rhVimeoPlaylistObj = { currentVideoPlaying : '', rhPlaylistPlayerVimeo: '', rhPlaylistVideoAutoplayVimeo: 0, createPlayer: function ( videoId ) { if ( '' !== videoId ) { var vimeo_iframe_autoplay = ''; this.currentVideoPlaying = videoId; rhPlaylistGeneralFunctions.rhVideoPlaylistRemoveFocused( '.rh_click_video_vimeo' ); jQuery( '#rh_' + videoId ).addClass( 'rh_video_currently_playing' ); this.putMovieDataToControlBox( videoId ); if ( 0 !== this.rhPlaylistVideoAutoplayVimeo ) { vimeo_iframe_autoplay = '&autoplay=1'; } jQuery( '.rh_wrapper_playlist_player_vimeo' ).html( '' ); jQuery( '.rh_wrapper_playlist_player_vimeo' ).html( '
' ); this.createVimeoObjectPlayer( jQuery ); } }, putMovieDataToControlBox: function( videoId ){ }, createVimeoObjectPlayer : function( $ ) { var iframe = ''; var player = ''; iframe = $( '#player_vimeo_1' )[0]; player = $f( iframe ); this.rhPlaylistPlayerVimeo = player; player.addEvent( 'ready', function() { player.addEvent( 'play', rhVimeoPlaylistObj.onPlay ); player.addEvent( 'pause', rhVimeoPlaylistObj.onPause ); player.addEvent( 'finish', rhVimeoPlaylistObj.onFinish ); player.addEvent( 'playProgress', rhVimeoPlaylistObj.onPlayProgress ); }); }, onPlay : function( id ) { rhPlaylistGeneralFunctions.rhPlaylistAddPauseControl( '.rh_vimeo_control' ); rhVimeoPlaylistObj.rhPlaylistVideoAutoplayVimeo = 1; }, onPause : function( id ) { rhPlaylistGeneralFunctions.rhPlaylistAddPlayControl( '.rh_vimeo_control' ); }, onFinish : function( id ) { rhPlaylistGeneralFunctions.rhPlaylistAddPlayControl( '.rh_vimeo_control' ); rhVimeoPlaylistObj.rhPlaylistVideoAutoplayVimeo = 1; if ( ! rhDetect.isMobileDevice || ! rhDetect.isAndroid ) { var nextVideoId = rhPlaylistGeneralFunctions.rhPlaylistChooseNextVideo( [rh_vimeo_list_ids, rhVimeoPlaylistObj.currentVideoPlaying] ); if ( '' !== nextVideoId ) { rhVimeoPlaylistObj.createPlayer( nextVideoId ); } } }, onPlayProgress : function onPlayProgress( data, id ) { } }; rhPlaylistGeneralFunctions = { rhVideoPlaylistRemoveFocused: function( objClass ) { jQuery( objClass ).each(function() { jQuery( this ).removeClass( 'rh_video_currently_playing' ); }); }, rhPlaylistChooseNextVideo: function( parramArray ){ var videoList = parramArray[0]; var currentVideoIdPlaying = 'rh_' + parramArray[1]; var nextVideoId = ''; var foundCurrent = ''; for ( var video in videoList ) { if ( videoList.hasOwnProperty( video ) ) { if ( 'found' === foundCurrent ) { nextVideoId = video; foundCurrent = ''; break; } if ( video === currentVideoIdPlaying ) { foundCurrent = 'found'; } } } if ( '' !== nextVideoId ) { if ( 'rh_' === nextVideoId.substring( 0, 3 ) ) { nextVideoId = nextVideoId.substring( 3 ); } return nextVideoId; } return ''; }, rhPlaylistAddPauseControl: function( wrapperClass ){ jQuery( wrapperClass ).removeClass( 'rh-sp-video-play' ).addClass( 'rh-sp-video-pause' ); }, rhPlaylistAddPlayControl: function( wrapperClass ){ jQuery( wrapperClass ).removeClass( 'rh-sp-video-pause' ).addClass( 'rh-sp-video-play' ); } }; })();