我环顾四周,找不到任何有用的东西。
我一直在开发一个网络应用程序,可以让您播放视频文件,主要是 mp4。根据移动浏览器的不同,单击链接时,它将在新选项卡中打开并使用 HTML5 播放(Firefox 会这样做)、下载它(Chrome 有时会这样做)或询问要做什么(Internet 一直这样做,有时使用 Chrome)。
我可以在单击链接时强制显示完整操作对话框吗?
除此之外,我使用下拉菜单进行链接,因为它看起来更整洁。使用 PHP 提取选项的值,因此我可以选择在必要时通过该选项检测浏览器。我不喜欢 JavaScript,但如果需要的话我会使用它。
我的 PHP 代码:
<select width="100%" onchange="location = this.options[this.selectedIndex].value;">
<option selected disabled>Choose Video Quality</option>
<?php
foreach($show[additionalMedia] as $addt){
?>
<option value="<?=$addt[url] ?>"><?=$addt[role] ?></option>
<?php
}
?>
</select>
我的代码呈现为 HTML:
<select width="100%" onchange="location = this.options[this.selectedIndex].value;">
<option selected disabled>Choose Video Quality</option>
<option value="http://blip.tv/file/get/NostalgiaCritic-AdventureTimeVlogsMortalRecoil577.mp4">Source</option>
<option value="http://blip.tv/file/get/NostalgiaCritic-AdventureTimeVlogsMortalRecoil150.m4v">Blip SD</option>
<option value="http://blip.tv/file/get/NostalgiaCritic-AdventureTimeVlogsMortalRecoil599.mp4">Blip LD</option>
<option value="http://blip.tv/file/get/NostalgiaCritic-AdventureTimeVlogsMortalRecoil515.m4v">Blip HD 720</option>
<option value="http://blip.tv/file/get/NostalgiaCritic-AdventureTimeVlogsMortalRecoil642.m3u8">Blip HLS</option>
</select>
我不会发布数据来源的 json_decode
d 数组,但只要说 $addt[url]
是视频 URL 并且 $addt[role]
是 URL 描述。
有什么帮助吗?
最佳答案
凭借我的一些 Android 经验重新审视我的旧问题,我不确定这是否可能。操作选择器使用 MIME 类型来确定要使用的应用程序,并将显示可以处理该类型的所有 Android 应用程序。如果用户设置了首选项,则不会显示选择器。
假设,PHP 可以提供下载具有各种 MIME 类型的文件的功能,“欺骗”Android 设备,以扩展可用的“打开方式”选项的数量,但就目前情况而言,Android 将尽力而为打开扔给它的任何文件。
使用错误 MIME 类型的 Hack-y 解决方案:
<select width="100%" onchange="location = '/download.php?mime=' + document.getElementById("mimetype").value + '&file=' + this.options[this.selectedIndex].value;">
关于javascript - 在 Android 上让 HTML 链接始终提示“完成操作”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20928828/