使用JS或PHP = MediaElementJS更改视频的SRC

问题描述 投票:1回答:1

下午好。当用户点击带有img的div时,我正在尝试更改我的视频播放器MediaElement.Js的视频源,例如:

<a href="http://dns:port/hls/125.m3u8"><div id="change_channel><img src="https://www.example.com/img_chh/fox.png"></div></a>

我找到了其他用户想要更改html5视频来源的答案,但只有两个流。我有它的问题是我有+400流和其他用户的答案的代码行不再工作...

我试图运行此代码,但它不起作用:

<a href="http://dns:port/live/123.m3u8" onclick="
  playerObject.pause();
  playerObject.setSrc(this.href);
  playerObject.media.load();
  playerObject.load();
  return false
"><div id="change_channel><img src="https://www.example.com/img_chh/fox.png"></div></a>

我将把完整的代码留在codepen中来调试它比下载所有文件以运行MediaElement.js更容易。 https://codepen.io/Hacker_D/pen/vzzKgM如果有人知道如何解决这个问题,我将感激不尽。问候,DiX

javascript php html5-video src mediaelement.js
1个回答
0
投票

首先,当然,给定的代码不起作用,因为playerObject不是指任何东西,如果它是指<video>元素,那么行playerObject.media.load();无效,因为Audio/Video DOM element上没有这样的属性。至少在某处初始化它(给你的<video>标签赋予和id,然后在某处做playerObject = document.getElementById(<the id of your video element>);

我把问题中的链接分叉并修复了javascript(https://codepen.io/anon/pen/gddogL),但由于视频网址无效,因此无法播放,但它不再有任何javascript错误。因此,如果你有有效的视频网址,你至少可以修补它。

至于他的视频数量,因为你标记了php,只需创建一个通用的javascript函数,它接受源并将其设置为播放器,并在生成页面时,只需在每个单击处理程序中放入正确的源。

© www.soinside.com 2019 - 2024. All rights reserved.