逗人,
我制作了播放视频和音频的HTML帮助
当我从(默认值为7)更改为(9,10或边缘)时,它可以正常工作 我怎么能把它修好到最新。 我需要做什么?
这是我的助手代码
public static IHtmlString Media(this HtmlHelper helper, string width, string height, string src, bool isYoutubeOrVimeo = false, string type = "video")
{
if (type == "audio")
{
return new MvcHtmlString(string.Format(@"<audio controls>
<source src='{0}' type='audio/ogg'>
<source src='{0}' type='audio/mpeg'>
<source src='{0}' type='audio/wav'>
Your browser does not support the audio element.
</audio>", src));
}
else
{
if (isYoutubeOrVimeo == false)
{
return new MvcHtmlString(string.Format(@"<video width='{0}' height='{1}' controls>
<source src='{2}' type='video/mp4'>
<source src='{2}' type='video/ogg'>
<source src='{2}' type='video/webm'>
Your browser does not support the video tag.
</video>", width, height, src));
}
else
{
Regex VimeoVideoRegex = new Regex(@"vimeo\.com/(?:.*#|.*/videos/)?([0-9]+)", RegexOptions.IgnoreCase | RegexOptions.Multiline);
Regex YoutubeVideoRegex = new Regex(@"^(?:https?\:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v\=))([\w-]{10,12})(?:$|\&|\?\#).*");
Match youtubeMatch = YoutubeVideoRegex.Match(src);
Match vimeoMatch = VimeoVideoRegex.Match(src);
string id = string.Empty;
if (youtubeMatch.Success)
{
id = youtubeMatch.Groups[1].Value;
return new MvcHtmlString(string.Format(@"<iframe width='{0}' height='{1}' src='{2}' frameborder='0' allowfullscreen></iframe>", width, height, "https://www.youtube.com/embed/" + id));
}
if (vimeoMatch.Success)
id = vimeoMatch.Groups[1].Value;
return new MvcHtmlString(string.Format(@"<iframe width='{0}' height='{1}' src='{2}' frameborder='0'></iframe>", width, height, "https://player.vimeo.com/video/" + id));
}
}
}
答案 0 :(得分:0)
首先,使用文件&gt;属性菜单确定您的测试网站映射到的 IE安全区域。默认情况下,localhost子域将映射到Internet区域。如果你的localhost映射到INTRANET区域,那么它将采用IE7的默认模拟模式(参见工具&gt;兼容性视图设置&gt;&#34;在兼容性视图中显示内部网站点&#34; )并且不会支持/渲染html5媒体元素,也只会运行32位BHO,工具栏或ActiveX控件(32位cpu的粗略运行64位代码)。
从IE浏览器工具&gt;互联网选项&gt;安全选项卡,点击&#34;将所有区域重置为默认值&#34;按钮,将您的开发机器的浏览器安全设置重置为其工厂或公司GPO默认设置。
然后选择......
Intranet区域&gt;高级按钮,从列表中删除localhost或127.0.0.1。保存更改。
返回IE并刷新测试网站页面。使用IE中的文件&gt;属性菜单再次确认它现在映射到INTERNET安全区域。使用IE开发工具的Emulation选项卡确认它现在采用Edge仿真模式(IE11),因此能够支持HTML5媒体元素。
但是,您的屏幕截图表明您的BHO甚至没有加载到IE 32位标签进程中......您需要部署32位和64位版本的BHO,它们可以在32位处理器和64位进程/标签上运行。 ...默认情况下,64位处理器上的IE只会在加载映射到Internet(或受限制)区域的网站的选项卡上加载64位BHO。
您的BHO(在没有用户操作的情况下自动在网页中注入内容)在野外部署时可能会被标记为恶意软件...请参阅以下链接以了解最佳做法&#39;用于IE Addon开发。
http://www.enhanceie.com/ie/dev.asp
https://msdn.microsoft.com/en-us/library/gg130949(v=vs.85).aspx