|
@@ -1,10 +1,15 @@
|
|
$(function () {
|
|
$(function () {
|
|
ajax.loadProgram();
|
|
ajax.loadProgram();
|
|
-
|
|
|
|
|
|
+ var time = 0;
|
|
$(".right-box-bottom").scroll(function (e) {
|
|
$(".right-box-bottom").scroll(function (e) {
|
|
e.preventDefault();
|
|
e.preventDefault();
|
|
});
|
|
});
|
|
|
|
|
|
|
|
+ $("#video").on("timeupdate", function (e) {
|
|
|
|
+ if(time === 0) return time++
|
|
|
|
+ canvas.linemove(this.currentTime);
|
|
|
|
+ });
|
|
|
|
+
|
|
$("#addHere").on("click", ".column", function () {
|
|
$("#addHere").on("click", ".column", function () {
|
|
if ($(this).hasClass("act")) return;
|
|
if ($(this).hasClass("act")) return;
|
|
var index = $(this).attr("index");
|
|
var index = $(this).attr("index");
|
|
@@ -15,14 +20,13 @@ $(function () {
|
|
ajax.loaddata(item.dataUrl);
|
|
ajax.loaddata(item.dataUrl);
|
|
});
|
|
});
|
|
|
|
|
|
- $("#channelUl li").on("click", function () {
|
|
|
|
|
|
+ $("#channelUl .li").on("click", function () {
|
|
if (ajax.channelName === $(this).text()) return;
|
|
if (ajax.channelName === $(this).text()) return;
|
|
- $("#channelName").text($(this).text());
|
|
|
|
$("#channelNameshow").text($(this).text());
|
|
$("#channelNameshow").text($(this).text());
|
|
- $("#channelName").attr("channelId", $(this).attr("channelId"));
|
|
|
|
ajax.channelName = $(this).text();
|
|
ajax.channelName = $(this).text();
|
|
views.createColumn(ajax.column);
|
|
views.createColumn(ajax.column);
|
|
-
|
|
|
|
|
|
+ $(".actSelect").removeClass("actSelect");
|
|
|
|
+ $(this).addClass("actSelect");
|
|
var item = {};
|
|
var item = {};
|
|
for (var i = 0; i < ajax.column.length; i++) {
|
|
for (var i = 0; i < ajax.column.length; i++) {
|
|
var v = ajax.column[i];
|
|
var v = ajax.column[i];
|
|
@@ -37,6 +41,7 @@ $(function () {
|
|
});
|
|
});
|
|
var ssss;
|
|
var ssss;
|
|
var myChart;
|
|
var myChart;
|
|
|
|
+var load;
|
|
var ajax = {
|
|
var ajax = {
|
|
domain: "https://djweb.smcic.net",
|
|
domain: "https://djweb.smcic.net",
|
|
Irdata: [],
|
|
Irdata: [],
|
|
@@ -52,18 +57,14 @@ var ajax = {
|
|
AllDate: [],
|
|
AllDate: [],
|
|
loaddata: function (api) {
|
|
loaddata: function (api) {
|
|
var that = this;
|
|
var that = this;
|
|
|
|
+ load = true;
|
|
var programId = $("#programName").attr("programid");
|
|
var programId = $("#programName").attr("programid");
|
|
$.ajax({
|
|
$.ajax({
|
|
type: "get",
|
|
type: "get",
|
|
async: true,
|
|
async: true,
|
|
data: {
|
|
data: {
|
|
programId: programId,
|
|
programId: programId,
|
|
- // startTime: new Date($('#programName').attr('startTime')).getTime() / 1000,
|
|
|
|
- // endTime: new Date($('#programName').attr('endTime')).getTime() / 1000
|
|
|
|
- // programId: 129192,
|
|
|
|
- // endTime: 10
|
|
|
|
},
|
|
},
|
|
- // url: that.domain + '/starv-channel/program/getProgramDetail',
|
|
|
|
url: api,
|
|
url: api,
|
|
cache: false,
|
|
cache: false,
|
|
dataType: "json",
|
|
dataType: "json",
|
|
@@ -84,11 +85,10 @@ var ajax = {
|
|
);
|
|
);
|
|
}
|
|
}
|
|
ssss = that.timeAll[0];
|
|
ssss = that.timeAll[0];
|
|
|
|
+ canvas.startpercen = 0;
|
|
|
|
+ canvas.endpercen = 6.8;
|
|
canvas.draw();
|
|
canvas.draw();
|
|
- var myVid = document.getElementsByClassName("video")[0];
|
|
|
|
- setInterval(function () {
|
|
|
|
- canvas.linemove(myVid.currentTime);
|
|
|
|
- }, 1000);
|
|
|
|
|
|
+ load = false;
|
|
},
|
|
},
|
|
});
|
|
});
|
|
},
|
|
},
|
|
@@ -109,20 +109,12 @@ var ajax = {
|
|
},
|
|
},
|
|
loadProgram: function () {
|
|
loadProgram: function () {
|
|
var that = this;
|
|
var that = this;
|
|
- // var startTime = $("#timeName").text() + " 00:00:00";
|
|
|
|
- // var endTime = $("#timeName").text() + " 24:00:00";
|
|
|
|
$.ajax({
|
|
$.ajax({
|
|
type: "get",
|
|
type: "get",
|
|
// type: "POST",
|
|
// type: "POST",
|
|
async: false,
|
|
async: false,
|
|
url: that.domain + "/data/program.json",
|
|
url: that.domain + "/data/program.json",
|
|
- // url: that.domain + "/starv-channel/program/getProgramIndex",
|
|
|
|
- data: {
|
|
|
|
- // programTypeCode: "",
|
|
|
|
- // startTime: startTime,
|
|
|
|
- // endTime: endTime,
|
|
|
|
- // canPlay: true,
|
|
|
|
- },
|
|
|
|
|
|
+ data: {},
|
|
cache: false,
|
|
cache: false,
|
|
dataType: "json",
|
|
dataType: "json",
|
|
success: function (json) {
|
|
success: function (json) {
|
|
@@ -147,15 +139,6 @@ var ajax = {
|
|
|
|
|
|
$("#video").attr("src", ajax.column[0].url);
|
|
$("#video").attr("src", ajax.column[0].url);
|
|
ajax.loaddata(ajax.column[0].dataUrl);
|
|
ajax.loaddata(ajax.column[0].dataUrl);
|
|
- // that.programClick();
|
|
|
|
- // $("#programName").text(json.data[0].content);
|
|
|
|
- // $("#programName").attr("programId", json.data[0].programId);
|
|
|
|
- // $("#programName").attr("endTime", json.data[0].endTime);
|
|
|
|
- // $("#programName").attr("startTime", json.data[0].startTime);
|
|
|
|
- // $("#programName").attr("url", json.data[0].playPath);
|
|
|
|
- // $("#video").attr("src", json.data[0].playPath);
|
|
|
|
-
|
|
|
|
- // ajax.loaddata();
|
|
|
|
},
|
|
},
|
|
});
|
|
});
|
|
},
|
|
},
|
|
@@ -169,7 +152,6 @@ var ajax = {
|
|
$("#programName").attr("startTime", $(this).attr("startTime"));
|
|
$("#programName").attr("startTime", $(this).attr("startTime"));
|
|
$("#programName").attr("url", $(this).attr("playPath"));
|
|
$("#programName").attr("url", $(this).attr("playPath"));
|
|
$("#video").attr("src", $(this).attr("url"));
|
|
$("#video").attr("src", $(this).attr("url"));
|
|
- // ajax.loaddata();
|
|
|
|
});
|
|
});
|
|
},
|
|
},
|
|
};
|
|
};
|
|
@@ -180,7 +162,11 @@ var views = {
|
|
// $("#channelUl").append('<li class="li">' + list[0] + "</li>");
|
|
// $("#channelUl").append('<li class="li">' + list[0] + "</li>");
|
|
for (var i = 0; i < list.length; i++) {
|
|
for (var i = 0; i < list.length; i++) {
|
|
var v = list[i];
|
|
var v = list[i];
|
|
- $("#channelUl").append('<li class="li">' + v + "</li>");
|
|
|
|
|
|
+ if (i === 0) {
|
|
|
|
+ $("#channelUl").append('<div class="li actSelect">' + v + "</div>");
|
|
|
|
+ } else {
|
|
|
|
+ $("#channelUl").append('<div class="li">' + v + "</div>");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
},
|
|
},
|
|
createColumn: function (list) {
|
|
createColumn: function (list) {
|
|
@@ -230,6 +216,7 @@ var canvas = {
|
|
innernowdata: null,
|
|
innernowdata: null,
|
|
linemove: function (nowdate) {
|
|
linemove: function (nowdate) {
|
|
// return;
|
|
// return;
|
|
|
|
+ if (!ajax.AllDate || !ajax.AllDate.length || load) return;
|
|
var nowsecend = Math.floor(nowdate + Tool.tosecond(ssss));
|
|
var nowsecend = Math.floor(nowdate + Tool.tosecond(ssss));
|
|
var h =
|
|
var h =
|
|
Math.floor((nowsecend / 60 / 60) % 24) < 10
|
|
Math.floor((nowsecend / 60 / 60) % 24) < 10
|
|
@@ -243,53 +230,66 @@ var canvas = {
|
|
Math.floor(nowsecend % 60) < 10
|
|
Math.floor(nowsecend % 60) < 10
|
|
? "0" + Math.floor(nowsecend % 60)
|
|
? "0" + Math.floor(nowsecend % 60)
|
|
: Math.floor(nowsecend % 60);
|
|
: Math.floor(nowsecend % 60);
|
|
- var programGroup = ajax.AllDate[Math.floor(nowdate)].programGroup || {};
|
|
|
|
- var lrTop = ajax.AllDate[Math.floor(nowdate)].lrTop || {};
|
|
|
|
|
|
+ var allDate = ajax.AllDate[Math.floor(nowdate)] || {};
|
|
|
|
+ var programGroup = allDate.programGroup || {};
|
|
|
|
+ var lrTop = allDate.lrTop || {};
|
|
|
|
+ var lcTop = allDate.lcTop || {};
|
|
$("#ys").text(programGroup.CCTV) || "";
|
|
$("#ys").text(programGroup.CCTV) || "";
|
|
$("#ws").text(programGroup.satellite) || "";
|
|
$("#ws").text(programGroup.satellite) || "";
|
|
$("#sj").text(programGroup.provincial) || "";
|
|
$("#sj").text(programGroup.provincial) || "";
|
|
$("#dm").text(programGroup.ground) || "";
|
|
$("#dm").text(programGroup.ground) || "";
|
|
$("#qt").text(programGroup.other) || "";
|
|
$("#qt").text(programGroup.other) || "";
|
|
- if (lrTop.No1) $("#no1").text(lrTop.No1);
|
|
|
|
- if (lrTop.No2) $("#no2").text(lrTop.No2);
|
|
|
|
- if (lrTop.No3) $("#no3").text(lrTop.No3);
|
|
|
|
- if (lrTop.No4) $("#no4").text(lrTop.No4);
|
|
|
|
- if (lrTop.No5) $("#no5").text(lrTop.No5);
|
|
|
|
|
|
+ $("#no1").text(lrTop.No1 || "");
|
|
|
|
+ $("#no2").text(lrTop.No2 || "");
|
|
|
|
+ $("#no3").text(lrTop.No3 || "");
|
|
|
|
+ $("#no4").text(lrTop.No4 || "");
|
|
|
|
+ $("#no5").text(lrTop.No5 || "");
|
|
|
|
+
|
|
|
|
+ $("#lcno1").text(lcTop.No1 || "");
|
|
|
|
+ $("#lcno2").text(lcTop.No2 || "");
|
|
|
|
+ $("#lcno3").text(lcTop.No3 || "");
|
|
|
|
+ $("#lcno4").text(lcTop.No4 || "");
|
|
|
|
+ $("#lcno5").text(lcTop.No5 || "");
|
|
$("#now").text("当前时间:" + h + ":" + m + ":" + s);
|
|
$("#now").text("当前时间:" + h + ":" + m + ":" + s);
|
|
- let p = Tool.accMul(ajax.AllDate[Math.floor(nowdate)].audienceRating, 100);
|
|
|
|
|
|
+ let p = Tool.accMul(allDate.audienceRating, 100);
|
|
$("#sslnum").text(p.toFixed(2) + "%");
|
|
$("#sslnum").text(p.toFixed(2) + "%");
|
|
var start = Tool.tosecond(this.startTime);
|
|
var start = Tool.tosecond(this.startTime);
|
|
- var cha = Tool.tosecond(this.endTime) - start;
|
|
|
|
- if (nowdate > 0 && nowdate % cha == 0) {
|
|
|
|
- this.pagenum = Math.floor(nowdate / cha);
|
|
|
|
- } else {
|
|
|
|
- this.pagenum = Math.floor(nowdate / cha) + 1;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if (
|
|
|
|
- Tool.tosecond(this.endTime) - Tool.tosecond(ssss) < nowdate ||
|
|
|
|
- start - Tool.tosecond(ssss) > nowdate
|
|
|
|
- ) {
|
|
|
|
- this.endpercen = this.fixendpercen * this.pagenum;
|
|
|
|
- this.startpercen = this.fixendpercen * (this.pagenum - 1);
|
|
|
|
|
|
+ var end = Tool.tosecond(this.endTime);
|
|
|
|
+ var cha = end - start;
|
|
|
|
+ // if (nowdate > 0 && nowdate % cha == 0) {
|
|
|
|
+ // this.pagenum = Math.floor(nowdate / cha);
|
|
|
|
+ // } else {
|
|
|
|
+ // this.pagenum = Math.floor(nowdate / cha) + 1;
|
|
|
|
+ // }
|
|
|
|
+ // Tool.tosecond(this.endTime) - Tool.tosecond(ssss) < nowdate ||
|
|
|
|
+ // start - Tool.tosecond(ssss) > nowdate
|
|
|
|
+ if (nowsecend < start || end <= nowsecend) {
|
|
|
|
+ var video = $("#video")[0];
|
|
|
|
+ this.startpercen = (video.currentTime / video.duration) * 100;
|
|
|
|
+ this.endpercen = this.startpercen + this.fixendpercen;
|
|
this.draw();
|
|
this.draw();
|
|
|
|
+ $("#line").css({
|
|
|
|
+ // "left": 500 * ((nowdate % cha) / cha) //比例乘以步长
|
|
|
|
+ // "left": Tool.accMul((Math.round(nowdate) % cha) / cha, 500) //比例乘以步长
|
|
|
|
+ left: "0%", //比例乘以步长
|
|
|
|
+ });
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
- var step =
|
|
|
|
- ($("#linebox").innerWidth() * (Tool.tosecond(ssss) + nowdate - start)) /
|
|
|
|
- cha;
|
|
|
|
- var t =
|
|
|
|
- nowdate -
|
|
|
|
- (new Date("2021-01-01 " + this.startTime) -
|
|
|
|
- new Date("2021-01-01 " + ssss));
|
|
|
|
|
|
+ // var step =
|
|
|
|
+ // ($("#linebox").innerWidth() * (Tool.tosecond(ssss) + nowdate - start)) /
|
|
|
|
+ // cha;
|
|
|
|
+ // var t =
|
|
|
|
+ // nowdate -
|
|
|
|
+ // (new Date("2021-01-01 " + this.startTime) -
|
|
|
|
+ // new Date("2021-01-01 " + ssss));
|
|
$("#line").css({
|
|
$("#line").css({
|
|
// "left": 500 * ((nowdate % cha) / cha) //比例乘以步长
|
|
// "left": 500 * ((nowdate % cha) / cha) //比例乘以步长
|
|
// "left": Tool.accMul((Math.round(nowdate) % cha) / cha, 500) //比例乘以步长
|
|
// "left": Tool.accMul((Math.round(nowdate) % cha) / cha, 500) //比例乘以步长
|
|
- left: step, //比例乘以步长
|
|
|
|
|
|
+ left: ((nowsecend - start) / cha) * 100 + "%", //比例乘以步长
|
|
});
|
|
});
|
|
},
|
|
},
|
|
- draw: function (Refresh) {
|
|
|
|
|
|
+ draw: function () {
|
|
//流出/流入/收视率
|
|
//流出/流入/收视率
|
|
- // var main =
|
|
|
|
if(myChart) myChart.dispose();
|
|
if(myChart) myChart.dispose();
|
|
myChart = echarts.init(document.getElementById("main"));
|
|
myChart = echarts.init(document.getElementById("main"));
|
|
|
|
|
|
@@ -297,7 +297,7 @@ var canvas = {
|
|
dataZoom: [
|
|
dataZoom: [
|
|
{
|
|
{
|
|
maxSpan: 10,
|
|
maxSpan: 10,
|
|
- minSpan: 1,
|
|
|
|
|
|
+ minSpan: 10,
|
|
type: "slider",
|
|
type: "slider",
|
|
show: true,
|
|
show: true,
|
|
realtime: true,
|
|
realtime: true,
|
|
@@ -348,7 +348,7 @@ var canvas = {
|
|
show: false,
|
|
show: false,
|
|
},
|
|
},
|
|
axisLabel: {
|
|
axisLabel: {
|
|
- interval: 10,
|
|
|
|
|
|
+ interval: "auto",
|
|
textStyle: {
|
|
textStyle: {
|
|
color: "#c5c6cc",
|
|
color: "#c5c6cc",
|
|
},
|
|
},
|
|
@@ -460,19 +460,30 @@ var canvas = {
|
|
var xAxis = myChart.getModel().option.xAxis
|
|
var xAxis = myChart.getModel().option.xAxis
|
|
? myChart.getModel().option.xAxis[0]
|
|
? myChart.getModel().option.xAxis[0]
|
|
: { data: [] };
|
|
: { data: [] };
|
|
- canvas.startTime =
|
|
|
|
- xAxis.data[Math.floor((canvas.startpercen / 100) * xAxis.data.length)];
|
|
|
|
- canvas.endTime =
|
|
|
|
- xAxis.data[Math.floor((canvas.endpercen / 100) * xAxis.data.length)];
|
|
|
|
|
|
+ var len = xAxis.data.length;
|
|
|
|
+ var video = $("#video")[0];
|
|
|
|
+ // if(load) video.currentTime = 0;
|
|
|
|
+ var e =
|
|
|
|
+ canvas.endpercen > 100
|
|
|
|
+ ? len - 1
|
|
|
|
+ : Math.floor((canvas.endpercen / 100) * (len - 1));
|
|
|
|
+ canvas.startTime = xAxis.data[Math.floor(video.currentTime)];
|
|
|
|
+ canvas.endTime = xAxis.data[e];
|
|
|
|
+ if (e >= len - 1) {
|
|
|
|
+ canvas.startTime =
|
|
|
|
+ xAxis.data[e - Math.ceil((len * canvas.fixendpercen) / 100)];
|
|
|
|
+ }
|
|
|
|
+ if (Math.floor(video.currentTime) === 0) {
|
|
|
|
+ canvas.endTime = xAxis.data[Math.ceil((len * canvas.fixendpercen) / 100)];
|
|
|
|
+ }
|
|
myChart.on("datazoom", function (params) {
|
|
myChart.on("datazoom", function (params) {
|
|
this.setOption({ animation: false });
|
|
this.setOption({ animation: false });
|
|
var xAxis = myChart.getModel().option.xAxis
|
|
var xAxis = myChart.getModel().option.xAxis
|
|
? myChart.getModel().option.xAxis[0]
|
|
? myChart.getModel().option.xAxis[0]
|
|
: { data: [] };
|
|
: { data: [] };
|
|
- canvas.startTime =
|
|
|
|
- xAxis.data[Math.floor((params.start / 100) * xAxis.data.length)];
|
|
|
|
- canvas.endTime =
|
|
|
|
- xAxis.data[Math.floor((params.end / 100) * xAxis.data.length)];
|
|
|
|
|
|
+ var len = (xAxis.data || []).length - 1;
|
|
|
|
+ canvas.startTime = xAxis.data[Math.floor((params.start / 100) * len)];
|
|
|
|
+ canvas.endTime = xAxis.data[Math.floor((params.end / 100) * len)];
|
|
if (Math.round(params.end - params.start) == canvas.fixendpercen) {
|
|
if (Math.round(params.end - params.start) == canvas.fixendpercen) {
|
|
//移动
|
|
//移动
|
|
|
|
|