我很困惑.我应该可以设置
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
Run Code Online (Sandbox Code Playgroud)
IE8和IE9应使用最新的渲染引擎呈现页面.但是,我刚刚对它进行了测试,如果在我们网站的其他地方启用了兼容模式,它将保留在我们的页面上,即使我们应该强制它不要.
怎么是你应该确保IE浏览器没有(甚至在企业内部网)使用兼容模式?
FWIW,我正在使用HTML5 DocType声明(<!doctype html>).
以下是该页面的前几行:
<!doctype html>
<!--[if lt IE 7 ]> <html lang="en" class="innerpage no-js ie6"> <![endif]-->
<!--[if IE 7 ]> <html lang="en" class="innerpage no-js ie7"> <![endif]-->
<!--[if IE 8 ]> <html lang="en" class="innerpage no-js ie8"> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!-->
<html lang="en" class="innerpage no-js">
<!--<![endif]-->
<head>
<meta charset="ISO-8859-1" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
Run Code Online (Sandbox Code Playgroud)
编辑:我刚刚了解到 IE8的默认设置是对Intranet站点使用IE7兼容模式.这会覆盖X-UA兼容的元标记吗?
我试图让IE9加载我的页面与IE9标准...
我注意到<!DOCTYPE HTML>把该死的东西放进了怪癖模式......这几乎打破了页面上的所有内容......
如何让IE坚持IE9标准?
在我的WinForms应用程序中,如果我使用WebBrowser控件,它似乎被强制进入兼容模式.如何禁用此功能,并使其在浏览同一站点时与我的计算机上的独立IE操作相同?
browser internet-explorer cross-browser webbrowser-control winforms
我以winforms形式主持MSIE.不幸的是,它坚持在兼容模式下运行,无论我是否在独立IE中给它一个在IE8模式下运行的页面.这样做的结果是,在独立的MSIE中正确呈现的某些内容在托管控件中完全错位并混乱.
除了文档类型等,还有一些神奇的方法告诉webbrowser我希望它以与在独立的MSIE中加载它相同的方式呈现页面吗?
I don't want to use the registry key override ( http://blogs.msdn.com/b/ie/archive/2009/03/10/more-ie8-extensibility-improvements.aspx ) due to my form being part of an add-in for another app. I don't want to change the IE behavior for the main app and I don't want to change it for other add-ins running under that app. I only want this to work within the browser hosted in my form, not app-wide and not process-wide.
internet-explorer webbrowser-control internet-explorer-8 winforms ie8-compatibility-mode
下面的代码在所有浏览器中都可以正常打开,但是当我尝试在 WPF Web 浏览器控件中运行代码时,它给出了 Javascript 错误“canvas.getContext("2d") 未定义”。
<html>
<head>
<title>Bar Chart</title>
<script src="Chart.js" type="text/javascript"></script>
<script type="text/javascript">
var canvas = null;
var context = null;
window.onload = function () {
invokeService();
canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
alert(context);
var myLine = new Chart(document.getElementById("canvas").getContext("2d")).Bar(barChartData);
};
var barChartData;
function invokeService() {
alert("q");
barChartData = {
labels: ["January", "February", "March", "April", "May", "June", "July"],
datasets: [
{
fillColor: "rgba(220,220,220,0.5)",
strokeColor: "rgba(220,220,220,1)",
data: [65, 59, 90, 81, 56, 55, 40]
},
{
fillColor: "rgba(151,187,205,0.5)", …Run Code Online (Sandbox Code Playgroud) 我正在尝试将一个YouTube视频加载到Delphi XE7中的TWebBrowser中,我收到的错误是:
视频播放需要Adobe Flash Player或支持HTML5的浏览器.
获取最新的Flash Player
了解有关升级到HTML5浏览器的更多信息
我可以正常加载普通的HTML.
我之前在这里发布的示例是针对Delphi的旧版本,所以我想知道这是新版本或TWebBrowser的问题,还是我环境中的问题(VMWare 7和Windows 7).
编辑:我的目标只是能够从URL加载和播放视频,如YouTube视频.TWebBrowser以外的解决方案很好,特别是如果它们可以跨平台运行.