我有一个页面,它使用 html5 视频标签播放来自视频的短片(该页面上不应提供完整视频)。如果用户访问页面并返回,当他们第二次访问时(几分钟内),视频不会播放。我相信这是因为我使用 jQuery 在 7 秒后暂停视频:
$('#playButton').click(function(event){
$('#theVideo').get(0).play()
setTimeout(function(){$('#theVideo').get(0).pause() }, 7000);
});
Run Code Online (Sandbox Code Playgroud)
我尝试.stop()按照此问题的未接受答案中的建议使用:
使 HTML5 视频在指定时间停止
此代码不起作用:
// doesn't work
setTimeout(function(){$('#theVideo').get(0).stop() }, 7000);
// also doesn't work
setTimeout(function(){$('#theVideo').stop() }, 7000);
Run Code Online (Sandbox Code Playgroud)
我参考了 Mozilla 的文档。我为 jQuery 和 HTML5 视频找到的唯一准官方文档来自 w3schools:https : //www.w3schools.com/tags/ref_av_dom.asp
它不引用“停止”方法。我应该期望 .stop() 起作用,还是需要找到其他解决方案?
我的视频代码:
<video playsinline id='theVideo' poster=''>
<source src='http://somedomain/subfolder/playlist.m3u8'>
</video>
<div id="playButton">PLAY</div>
Run Code Online (Sandbox Code Playgroud)
我感谢您的帮助。
我有一个脚本触发弹出框提供免费下载.它会在用户的鼠标离开页面时触发(显然不适用于移动设备 - 我已经有了一个可行的解决方案).在我的脚本中,我设置了一个cookie来停用脚本30分钟,那部分有效; 如果我刷新页面,弹出窗口不再显示.
问题是,如果有人关闭了弹出框,并且没有刷新页面(或导航到网站上的另一个页面),则每次鼠标移出页面时都会发生弹出框.
我正在使用一个设置事件的函数,但我不能只激活一次.(我正在使用的Wordpress网站使用的是jquery ver = 1.10.2.)
我的Javascript:
if (document.cookie.indexOf('somecookiename') != -1) {
function addEvent(obj, evt, fn) {
if (obj.addEventListener) {
obj.addEventListener(evt, fn, false);
} else if (obj.attachEvent) {
obj.attachEvent("on" + evt, fn);
}
}
};
jQuery(document).ready(function($) {
if (document.cookie.indexOf('somecookiename') == -1) {
//var thirtyminutes = 1000*60*30;
var thirtyminutes = 1000 * 60;
var expires = new Date((new Date()).valueOf() + thirtyminutes);
document.cookie = "somecookiename;expires=" + expires.toUTCString();
addEvent(document, "mouseout", function(e) {
e = e ? e : window.event;
var …Run Code Online (Sandbox Code Playgroud)