我有一个在提交时播放音频的表单(Vue但为nvm)。 它在任何地方都可以完美运行,但不能在iOS上运行。
在iOS上,仅在单击按钮元素时有效,但在iOS键盘上单击“返回”按钮时则无效:(
为什么iOS不信任提交事件,但它信任以相同方式起作用的点击?
有什么提示吗?谢谢!
我有一个“ hack”解决方案:
删除表单onsubmit
处理程序,将按钮的类型更改为type="button"
,向该按钮添加onclick
处理程序,然后调用playAudio()
(“ return”键将仍在键盘上,所以很好)。
添加onkeyup
事件以输入并在playAudio()
上调用keyCode === 13
(Enter键)。
我的“ hack”解决方案可以正常工作,但是是“ hack”:(
<form novalidate @submit.prevent="playAudio()">
<div class="form-group">
<input
type="text"
class="form-control"
autocapitalize="off"
autocomplete="off"
spellcheck="false"
autocorrect="off"
/>
</div>
<button type="submit" class="btn btn-block">Enter</button>
</form>
表单提交时出现iOS(xcode模拟器)错误:
NotAllowedError:在当前上下文中,用户代理或平台不允许该请求,可能是因为用户拒绝了权限。