var membersOnly ='
'; var locked = 0; var num = getParameterByName('topfol'); var num2 = getParameterByName('topfile'); var pram = location.search; url = "https://channel.nikkei.co.jp/m/watch/is_content_locked/" + num + "/" + num2; $.ajaxSetup({ async: false , cache:false}); $.getJSON( url , function(data) { locked = data.locked; }); //IEかどうかを確認 var userAgent = window.navigator.userAgent.toLowerCase(); if( userAgent.match(/(msie|MSIE)/) || userAgent.match(/(T|t)rident/) ) { var isIE = true; var ieVersion = userAgent.match(/((msie|MSIE)\s|rv:)([\d\.]+)/)[3]; ieVersion = parseInt(ieVersion); } else { var isIE = false; } $(".program_wrapper").click(function(){ prog = $(this).children(".program"); ajaxSwitchContents(prog); }); //番組一覧の読み込み $(function() { setTimeout(function(){ $.ajaxSetup({ async: true , cache:false }); dispLoading(); if($.cookie("layout") !== "sortByDate" ){ $.ajax({ type: 'GET', url: 'https://channel.nikkei.co.jp/m/common/lib/byProgram.html', cache: false, dataType: 'html', success: function(data) { //console.log("vodList load success"); $('#byProgram').html(data); $('.thumbLlayout').slick({ dots:true,speed: 200,lazyLoad: 'ondemand',slidesToShow: 3,slidesToScroll: 3,pauseOnHover:true, swipe: false,infinite: false }); $('.thumbSlayout').slick({ dots:true,speed: 200,lazyLoad: 'ondemand',slidesToShow: 4,slidesToScroll: 4,pauseOnHover:true, swipe: false,infinite: false }); setOnMouse(watchableStat); }, error:function() { alert('番組一覧の読み込みに失敗しました。[F5キー]を押して画面の再読み込みを行ってください。'); }, complete:function() { removeLoading(); } }); $("div#sortByDate").hide(); $("#tab li#byPg").addClass('select'); layoutLoaded = "byProgram"; } else { $.ajax({ type: 'GET', url: 'https://channel.nikkei.co.jp/m/common/lib/sortByDate.html', cache: false, dataType: 'html', success: function(data) { //console.log("vodList load success"); $('#sortByDate').html(data); $('#sortByDate img.lazy').lazyload({ threshold: 200 ,effect: "fadeIn" ,effect_speed: 300,failure_limit : 10 }) ; setOnMouse(watchableStat); }, error:function() { alert('番組一覧の読み込みに失敗しました。[F5キー]を押して画面の再読み込みを行ってください。'); }, complete:function() { removeLoading(); } }); $("#byProgram").hide(); $("#tab li#byDt").addClass('select'); layoutLoaded = "sortByDate"; } },4000); }); //番組別と新着順の切り替え $(function() { $("#tab li#byPg").click(function() { if(layoutLoaded == "sortByDate"){ $("#byProgram").show(); $("#sortByDate").empty().hide(); dispLoading(); $.ajax({ type: 'GET', url: 'https://channel.nikkei.co.jp/m/common/lib/byProgram.html', cache: false, dataType: 'html', success: function(data) { //console.log("vodList load success"); $('#byProgram').html(data); $('.thumbLlayout').slick({ dots:true,speed: 200,lazyLoad: 'ondemand',slidesToShow: 3,slidesToScroll: 3,pauseOnHover:true, swipe: false,infinite: false }); $('.thumbSlayout').slick({ dots:true,speed: 200,lazyLoad: 'ondemand',slidesToShow: 4,slidesToScroll: 4,pauseOnHover:true, swipe: false,infinite: false }); setOnMouse(watchableStat); }, error:function() { alert('番組一覧の読み込みに失敗しました。[F5キー]を押して画面の再読み込みを行ってください。'); }, complete:function() { removeLoading(); } }); $("#tab li#byPg").addClass('select'); $("#tab li#byDt").removeClass('select'); $.cookie("layout","byProgram"); layoutLoaded = "byProgram"; } }); $("#tab li#byDt").click(function() { if(layoutLoaded == "byProgram"){ $("#sortByDate").show(); dispLoading(); $.ajax({ type: 'GET', url: 'https://channel.nikkei.co.jp/m/common/lib/sortByDate.html', cache: false, dataType: 'html', success: function(data) { //console.log("vodList load success"); $("#byProgram").hide(); $("#sortByDate").show(); $('#sortByDate').html(data); $('#sortByDate img.lazy').lazyload({ threshold: 200 ,effect: "fadeIn" ,effect_speed: 300 }) ; setOnMouse(watchableStat); }, error:function() { alert('番組一覧の読み込みに失敗しました。[F5キー]を押して画面の再読み込みを行ってください。'); }, complete:function() { removeLoading(); } }); $("#tab li#byDt").addClass('select'); $("#tab li#byPg").removeClass('select'); $.cookie("layout","sortByDate"); layoutLoaded = "sortByDate"; $("#byProgram").hide(); $('.thumbLlayout').slick('unslick'); $('.thumbSlayout').slick('unslick'); $("#byProgram").empty(); } }); }); //初回の動画再生 function movnum(num,num2){ var tag = ''; //IEの場合、FlashPlayerフォールバックを行う if(isIE == true ){ tag = tag.replace("[\"html5\",\"flash\"]","[\"flash\"]"); } $("#flash").html(tag); videojs('pv'); if( watchableStat == 0 ){ videojs('pv').on('ended', function() { sampleMovieEnd("続きは登録会員の方のみご視聴いただけます"); }); } } //番組一覧から選択時に実行 function ajaxSwitchContents(prog){ url = "https://channel.nikkei.co.jp/m/watch/is_content_locked/" + prog.data("fol") + "/" + prog.data("file") $.ajaxSetup({ async: false , cache:false}); $.getJSON( url , function(data) { $.ajax({ url: 'https://channel.nikkei.co.jp/m/watch/membersOnly/ajax/' + data.id, dataType: 'html', cache:false , }) .done(function(result) { membersOnly = result; }) .fail(function(result) { // ... }); locked = data.locked; prevready = data.prevready; var fol = prog.data("fol"); var file = prog.data("file"); var tag = prog.html(); //動画プレイヤーが存在している場合 if(playerStat == 1){ var video = videojs('pv'); if( isIE == false ) { var rateValue = video.playbackRate(); //IE以外は再生速度を保持 }; video.dispose(); //動画プレイヤーを無効化 } var text = tag; text = text.replace('
', '
'); text = text.replace('

', '

'); tag = text; $("#description").html(tag); $("#description img").remove(); $("html,body").animate({scrollTop:0},"3000"); var arg = new Object; surl = location.search.substring(1).split('&'); for(i=0; surl[i]; i++) { var k = surl[i].split('='); arg[k[0]] = k[1]; } var ref = arg.ref; var free = ''; $("#vodmain").attr("src","https://channel.nikkei.co.jp/m/common/imgL/" + data.id + ".jpg"); if( locked == 0){ var vodSource = 'https://visenda.nikkeivi.co.jp/hls-vod/kawakami/mobile/'+ fol +'/'+ file +'.mp4.m3u8'; var tag = ''; //IEの場合、FlashPlayerフォールバックを行う if(isIE == true ){ tag = tag.replace("[\"html5\",\"flash\"]","[\"flash\"]"); } $("#flash").html(tag); videojs('pv'); playerStat = 1; //動画再生プレイヤーオン if( isIE == false ) { videojs('pv').ready(function(){ this.playbackRate(rateValue); }); } if (typeof ref === "undefined") { history.replaceState('','','https://channel.nikkei.co.jp/m/watch/vod/?topfol=' + fol + '&topfile=' + file ); }else{ history.replaceState('','','https://channel.nikkei.co.jp/m/watch/vod/?topfol=' + fol + '&topfile=' + file + '&ref=' + ref ); } var title_share = $("#description h3").text(); var theme_share = $("#description p.theme").text(); var desc_share = $("#description p.desc").text(); share_button(title_share, theme_share, desc_share); }else if( locked == 1 && prevready == 1){ console.log("チラ見せコンテンツです"); var vodSource = 'https://visenda.nikkeivi.co.jp/hls-vod/kawakami/mobile/'+ fol +'/'+ file +'_free.mp4.m3u8'; var tag = ''; //IEの場合、FlashPlayerフォールバックを行う if(isIE == true ){ tag = tag.replace("[\"html5\",\"flash\"]","[\"flash\"]"); } $("#flash").html(tag); playerStat = 1; //動画再生プレイヤーオン //再生速度の引継ぎはIE以外のブラウザのみ if( isIE == false ) { videojs('pv').ready(function(){ this.playbackRate(rateValue); }); } if( watchableStat == 0 ){ videojs('pv').on('ended', function() { sampleMovieEnd("続きは登録会員の方のみご視聴いただけます"); }); } if (typeof ref === "undefined") { history.replaceState('','','https://channel.nikkei.co.jp/m/watch/vod/?topfol=' + fol + '&topfile=' + file ); }else{ history.replaceState('','','https://channel.nikkei.co.jp/m/watch/vod/?topfol=' + fol + '&topfile=' + file + '&ref=' + ref ); } var title_share = $("#description h3").text(); var theme_share = $("#description p.theme").text(); var desc_share = $("#description p.desc").text(); share_button(title_share, theme_share, desc_share); }else { console.log("カギのかかったコンテンツです"); $("#flash").html( membersOnly ); playerStat = 0; //動画再生プレイヤーオン $("#share_buttons").html(""); $(".back").hover(function(){ $(this).fadeTo("50",0.7); },function(){ $(this).fadeTo("50",1.0); }); $(".back").on('click',function(){ sampleMovieEnd("この動画は登録会員の方のみご視聴いただけます"); }); history.replaceState('','','https://channel.nikkei.co.jp/m/watch/vod/?topfol=' + fol + '&topfile=' + file ); } if (typeof ref === "undefined") { $.get("https://channel.nikkei.co.jp/m/watch/vod_history/" + data.id ); }else{ $.get("https://channel.nikkei.co.jp/m/watch/vod_history/" + data.id + "/" + ref); } var titleName = $("#description h3").text(); var titleTime = $("#description p.prog_time").text(); var titleText = titleName + " [" + titleTime + "]|日経チャンネルマーケッツ"; document.title = titleText; }); } //サムネイル上の再生マーク表示 function setOnMouse(stat) { //console.log( "setOnMouse呼び出し" ); if( stat == 0 ){ $("#byProgram .key").append(''); $("#byProgram .key_prevready").append(''); $("#sortByDate .key").append(''); $("#sortByDate .key_prevready").append(''); }else { $("#byProgram .key").append(''); $("#byProgram .key_prevready").append(''); $("#sortByDate .key").append(''); $("#sortByDate .key_prevready").append(''); } $("#byProgram .play").append(''); $("#sortByDate .play").append(''); $(".program_wrapper").hover(function(){ $(this).children(".program").children(".programImg").css({"opacity":"0.8"}); },function(){ $(this).children(".program").children(".programImg").css({"opacity":"1"}); }); $(".program_wrapper").click(function(){ prog = $(this).children(".program"); ajaxSwitchContents( prog); }); } //VOD一覧の読み込み中のロードアイコンを表示 function dispLoading() { $("#tab").append("
  • "); } //VOD一覧の読み込み終了時にロードアイコンを消去 function removeLoading() { $("#tab #loading").remove(); } //URLからクエリを取得 function getParameterByName(name) { url = window.location.href; var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(url); if (!results) { return undefined; } return results[1] || undefined; } //アラートメッセージのモーダル表示 function sampleMovieEnd(text) { $('#alertTitle').html(text); $('[data-remodal-id=modal]').remodal().open(); }