在手机浏览器上jplayer全屏播放视频设置在播放完成或者中间停止播放后手机浏览器的网页不能上下滚屏的解决

本文主要是介绍在手机浏览器上jplayer全屏播放视频设置在播放完成或者中间停止播放后手机浏览器的网页不能上下滚屏的解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在安卓浏览器上进行手机版wap网页视频播放调试的时候发现我用的jplayer视频播放插件,由于当时做的时候要求的是打开自动全屏播放,在电脑端和手机端网页都做了如下处理:

$("#jquery_jplayer_1").jPlayer("play");
$(".jp-full-screen").click();  //最大化到全屏

在电脑端做测试的时候无论是等待视频播放完成还是播放中间终止,该视频的播放网页上下拉动的时候都能滚屏,但是在电脑端测试的时候却发现,在视频播放中间停止或者视频自动播放完成,用手指拖动屏幕上下滚动却没反应。当时第一反应是难道是这视频播放代码不兼容手机上的视频播放造成。一查看官方文档,这个手机端的视频播放demo和电脑端的确实差别挺大。但是看了代码觉得如果按官方demo来改,这工作量有点大啊,而要解决的问题很小,就是手机端的视频播放不能滚屏的问题。我测试了下,在点击播放的时候如果没有

$(".jp-full-screen").click();
这个全屏最大化的这行代码,手机端视频播放自动完成或者中间停止,该网页的屏幕都能够正常滚屏显示的。考虑到一般视频播放最大化和正常播放都是
一个按钮切换的,我于是在视频播放的预加载中两个地方增加了一行代码:
/** 视频播放器预加载*/
$("#jquery_jplayer_1").jPlayer({ready: function () {$(this).jPlayer("setMedia", {title: "video"});},swfPath: "/scripts/plugins/jplayer",//supplied: "flv,m4v",supplied: "m4v",size: {width: "100%",height: "100%",cssClass: "jp-video-full"},ended: function () {$(".jp-full-screen").click();  //最小化,不执行此操作,则不能上下拉动手机屏幕//$.jPlayer.pause();$("#jp_container_1").hide();},fullWindow: true,useStateClassSkin: true,autoBlur: false,smoothPlayBar: true,keyEnabled: true,keyBindings: {closeWindow: { // 自定义关闭窗口函数.key: 27, // 监视键盘ESC是否被按下fn: function (f) {// f is the instance in focus, which is this instance.// f.status is the status object.// f.play() to execute methods, such as play().//alert("Hello World");f.stop();$(".jp-full-screen").click();  //最小化,不执行此操作,则不能上下拉动手机屏幕$("#jp_container_1").hide();}}},remainingDuration: true,toggleDuration: true,//errorAlerts: true,//warningAlerts: true,error: function () {$("#jp_container_1").hide();}
});
在ended函数中及键盘esc取消事件中都增加了:
$(".jp-full-screen").click();
这行代码,经过测试,在手机端播放完成或者中间停止,都能够滚屏了,而且对电脑端的滚屏也没什么影响。这样问题就得以解决


这篇关于在手机浏览器上jplayer全屏播放视频设置在播放完成或者中间停止播放后手机浏览器的网页不能上下滚屏的解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/768182

相关文章

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

Python+PyQt5实现多屏幕协同播放功能

《Python+PyQt5实现多屏幕协同播放功能》在现代会议展示、数字广告、展览展示等场景中,多屏幕协同播放已成为刚需,下面我们就来看看如何利用Python和PyQt5开发一套功能强大的跨屏播控系统吧... 目录一、项目概述:突破传统播放限制二、核心技术解析2.1 多屏管理机制2.2 播放引擎设计2.3 专

Spring事务中@Transactional注解不生效的原因分析与解决

《Spring事务中@Transactional注解不生效的原因分析与解决》在Spring框架中,@Transactional注解是管理数据库事务的核心方式,本文将深入分析事务自调用的底层原理,解释为... 目录1. 引言2. 事务自调用问题重现2.1 示例代码2.2 问题现象3. 为什么事务自调用会失效3

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp

SpringBoot启动报错的11个高频问题排查与解决终极指南

《SpringBoot启动报错的11个高频问题排查与解决终极指南》这篇文章主要为大家详细介绍了SpringBoot启动报错的11个高频问题的排查与解决,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一... 目录1. 依赖冲突:NoSuchMethodError 的终极解法2. Bean注入失败:No qu

PyCharm如何设置新建文件默认为LF换行符

《PyCharm如何设置新建文件默认为LF换行符》:本文主要介绍PyCharm如何设置新建文件默认为LF换行符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录PyCharm设置新建文件默认为LF换行符设置换行符修改换行符总结PyCharm设置新建文件默认为LF

springboot报错Invalid bound statement (not found)的解决

《springboot报错Invalidboundstatement(notfound)的解决》本文主要介绍了springboot报错Invalidboundstatement(not... 目录一. 问题描述二.解决问题三. 添加配置项 四.其他的解决方案4.1 Mapper 接口与 XML 文件不匹配

SpringBoot使用OkHttp完成高效网络请求详解

《SpringBoot使用OkHttp完成高效网络请求详解》OkHttp是一个高效的HTTP客户端,支持同步和异步请求,且具备自动处理cookie、缓存和连接池等高级功能,下面我们来看看SpringB... 目录一、OkHttp 简介二、在 Spring Boot 中集成 OkHttp三、封装 OkHttp

Python实现自动化接收与处理手机验证码

《Python实现自动化接收与处理手机验证码》在移动互联网时代,短信验证码已成为身份验证、账号注册等环节的重要安全手段,本文将介绍如何利用Python实现验证码的自动接收,识别与转发,需要的可以参考下... 目录引言一、准备工作1.1 硬件与软件需求1.2 环境配置二、核心功能实现2.1 短信监听与获取2.