我正在尝试使用jQuery for iPad将视频插入HTML,但我看到的只是一个黑屏。如果我将视频标记直接添加到HTML页面,似乎一切正常。
这是我在JavaScript中的内容,我使用onClick事件的函数调用它。
var html = "";
html += '<video id="someVideo" width="'+settings.width+'" height="'+settings.height+'" controls="controls">';
html += '<source src="'+url+'" type="video/mp4" />';
html += '</video>';
$("#videoDiv").html(html);
如果我在身体内部创建了一个视频标签,一切似乎都运转正常
<video width=708px height=300px controls="controls"><source src="video.mp4" type="video/mp4"></video>
我计划使用JavaScript的原因是我在同一页面上的视频很少,并且希望用户选择一个视频来反对页面上的单个视频......任何想法都会有所帮助
任何帮助将不胜感激 感谢
答案 0 :(得分:19)
iPad的webkit中存在一个错误,可防止动态创建的视频元素正常加载。
要解决此设置源属性并在设置html
后调用视频元素加载方法var html = "";
html += '<video id="someVideo" width="'+settings.width+'" height="'+settings.height+'" controls="controls">';
html += '<source src="'+url+'" type="video/mp4" />';
html += '</video>';
$("#videoDiv").html(html);
$('#someVideo').attr('src', url);
$('#someVideo')[0].load();
答案 1 :(得分:2)
重新放大回答:请注意,只有当您的代码由用户操作(如点击处理程序)触发时,才会调用视频元素上的load()。
对我来说,这不起作用,因为苹果似乎并不认为历史处理程序(哈希更改)是用户触发的处理程序。
有关详细信息see apples documentation on javascript and the video element
答案 2 :(得分:0)
我计划使用JavaScript的原因 就是我的视频很少 页面,并希望用户选择一个 视频被视为反对a 页面上的单个视频...任何想法 周围也有帮助
将所有视频放在页面上,每个视频都带有“display:none”样式。然后.show()点击事件上的相应div。