disableRemotePlayback是HTML媒体元素的布尔属性,用于隐藏iOS Safari中视频右上角的AirPlay按钮,禁用远程播放控件;它自iOS 14.5起稳定支持,仅作用于<video>和<audio>标签,不阻止系统级屏幕镜像。
disableRemotePlayback 在 iOS 14+ **不是默认开启的**,它默认是关闭状态,即允许远程播放(如 AirPlay)。
disableRemotePlayback?这是一个 HTML <video> 或 <audio> 元素的布尔属性,用于禁用系统级的远程播放控件(比如视频右上角的 AirPlay 按钮)。它只影响 Web 页面内嵌媒体元素的行为,和原生 App 无关。
常见错误现象包括:
disableRemotePlayback 却没生效 —— 可能因为没加到正确的 <video> 标签上,或被 JS 动态移除了该属性自 iOS 14.5 起才获得稳定支持。早期 iOS 14.x(如 14.0–14.4)存在部分机型不识别、或仅对 <video> 有效而对 <audio> 无效的情况。
使用时注意:
disableRemotePlayback(无等号、无引号),不能写成 disableRemotePlayback="true"
<video> 和 <audio> 生效,<iframe> 内嵌视频不继承此属性webkit-playsinline,两者可共存,但不影响 disableRemotePlayback 的作用范围在 iOS Safari 中打开页面后,播放视频,观察右上角是否出现 AirPlay 图标:
示例写法:
<video disableRemotePlayback controls><source src="video.mp4"></video>
容易被忽略的一点:这个属性只是「隐藏控件」,并不阻止用户通过系统级方式(比如控制中心里的 AirPlay 镜像)投射整个页面或屏幕。真要限制投屏,得配合服务器端策略或 DRM,disableRemotePlayback 本身能力有限。