Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 苹果是如何定义“苹果”的;用户操作;?_Javascript_Ios_Html_Video - Fatal编程技术网

Javascript 苹果是如何定义“苹果”的;用户操作;?

Javascript 苹果是如何定义“苹果”的;用户操作;?,javascript,ios,html,video,Javascript,Ios,Html,Video,我目前正在从事一个网络项目,我需要在刷卡活动后开始播放视频,但我无法实现这一点。我正在使用HTML5视频播放器和JS检测刷卡事件。我第一次尝试使用hammer.js,它可以更容易地检测刷卡事件,但在努力工作之后,我开始使用纯js 经过一些调试,我注意到video HtmleElement的播放方法返回了一个承诺。当我从我的刷卡处理程序调用video.play()时,此承诺总是被拒绝,并显示以下消息: NotAllowedError(DOM异常35):请求不被 当前上下文中的用户代理或平台,可能是

我目前正在从事一个网络项目,我需要在刷卡活动后开始播放视频,但我无法实现这一点。我正在使用HTML5视频播放器和JS检测刷卡事件。我第一次尝试使用hammer.js,它可以更容易地检测刷卡事件,但在努力工作之后,我开始使用纯js

经过一些调试,我注意到video HtmleElement的播放方法返回了一个承诺。当我从我的刷卡处理程序调用
video.play()
时,此承诺总是被拒绝,并显示以下消息:

NotAllowedError(DOM异常35):请求不被 当前上下文中的用户代理或平台,可能是因为 用户拒绝了权限

由于这个问题只存在于iOS中,我开始阅读apple开发者文档,并注意到许多功能只有在“明确的用户操作”后才可用。例如:

要点:WebKitenerFullScreen()方法只能在中调用 对用户操作的响应,如单击按钮。你不能 调用webkitEnterFullscreen()以响应加载事件,例如 例如

资料来源:

这同样适用于从js调用play方法。只有在响应用户操作而调用它时,它才会工作


我的问题是,苹果如何定义“用户行为”?因为很明显,刷卡事件不是用户操作。

我不确定它们是否有严格的定义,但对于视频,通常是“单击”播放按钮

从一个角度来看,这是有道理的——这种想法可能是,刷卡通常与拒绝某些东西有关,因此不是允许启动视频的好人选

视频敏感的原因通常与用户在移动连接上意外地积累了大量数据账单有关


最近,这似乎不那么令人担忧了——例如,最新版本的iOS现在支持iPhone上的在线视频自动播放,这在过去是被阻止的。

我不确定他们是否有严格的定义,但对于视频,通常是“点击”播放按钮

从一个角度来看,这是有道理的——这种想法可能是,刷卡通常与拒绝某些东西有关,因此不是允许启动视频的好人选

视频敏感的原因通常与用户在移动连接上意外地积累了大量数据账单有关

如今,这似乎不那么令人担忧了——例如,最新版本的iOS现在支持iPhone上的在线视频自动播放,这在过去被阻止了