dorcel-handsoff 视频控制以及自动播放

啄木鸟视频网站 http://dorcel-handsoff.com/ 你懂的……

只有按下 Q S P L 四个按键才能播放,而且不能调节进度……

于是乎,ChromeConsole来了

首先打开开发者控制台……

自动按键

AutoClick = {};
AutoClick.keydown = function(k) {
  var oEvent = document.createEvent('KeyboardEvent');
  Object.defineProperty(oEvent, 'keyCode', {
    get : function() {
      return this.keyCodeVal;
    }
  });

  Object.defineProperty(oEvent, 'which', {
    get : function() {
      return this.keyCodeVal;
    }
  });

  if (oEvent.initKeyboardEvent) {
    oEvent.initKeyboardEvent("keydown", true, true, document.defaultView, false, false, false, false, k, k);
  } else {
    oEvent.initKeyEvent("keydown", true, true, document.defaultView, false, false, false, false, k, 0);
  }
  oEvent.keyCodeVal = k;
  if (oEvent.keyCode !== k) {
    alert("keyCode mismatch " + oEvent.keyCode + "(" + oEvent.which + ")");
  }
  document.dispatchEvent(oEvent);
}

按键绑定

Javascript Char Codes

AutoClick.keydown(76); // l
AutoClick.keydown(80); // p
AutoClick.keydown(81); // q
AutoClick.keydown(83); // s
AutoClick.keydown(32); // space key

隐藏键盘等遮罩层

如果不想使用自动按键,可以去掉顶部遮罩

// 隐藏键盘等遮罩层
$(".keyboard").hide();
$(".waitingLayer").hide();
$(".wrapper-shadow").hide();
// 获取播放器对象,并设置为播放
var v = jwplayer("video");
v.play(!0);
// 有时候当网页失去焦距之后,比如浏览其他网页
// 这个时候视频会暂停播放
// 有一个粗暴的解决方案:
setInterval(function() {v.play(!0);}, 500);

播放器对象

// 获取播放器对象,并设置为播放
v.play(!0);
// 获取当前播放点的时间
v.getPosition();
// 将视频调整到300播放点
v.seek(300);
// 将视频往后调整300个时间点
v.seek(v.getPosition()+300);
// 其余方法类似

完整代码

// 隐藏键盘等遮罩层
$(".keyboard").hide();
$(".waitingLayer").hide();
$(".wrapper-shadow").hide();
$('.logo-handsOff-small').remove();

// 获取播放器对象,并设置为播放
var v = jwplayer("video");

// 有时候当网页失去焦距之后,比如浏览其他网页
// 这个时候视频会暂停播放
// 有一个粗暴的解决方案:
setInterval(function() {v.play(!0);}, 500);

// 获取当前播放点的时间
v.getPosition();
// 将视频往后调整300个时间点
v.seek(v.getPosition()+300);
// 其余方法类似

参考: http://zp-j.github.io/blog/2015/10/13/js-key-event/

你可能感兴趣的:(dorcel-handsoff 视频控制以及自动播放)