Javascript excanvas.js无法使用动态加载脚本处理IE
我使用jQueryJavascript excanvas.js无法使用动态加载脚本处理IE,javascript,jquery,html,internet-explorer,excanvas,Javascript,Jquery,Html,Internet Explorer,Excanvas,我使用jQuery$.getScript()方法动态地将脚本加载到文档中,比如,$.getScript(“excanvas.js”,function(data){}) 在createcanvas上,我为canvas应用了以下语句: var canvasDiv = document.createElement('canvas'); canvasDiv.setAttribute("width", canvasBounds.width+"px"); canvasDiv.setAttribute("he
$.getScript()
方法动态地将脚本加载到文档中,比如,$.getScript(“excanvas.js”,function(data){})代码>
在createcanvas上,我为canvas应用了以下语句:
var canvasDiv = document.createElement('canvas');
canvasDiv.setAttribute("width", canvasBounds.width+"px");
canvasDiv.setAttribute("height", canvasBounds.height+"px");
if(window.G_vmlCanvasManager){
canvasDiv = G_vmlCanvasManager.initElement(canvasDiv);
}
我试着在画布上画一条线,它不起作用
如果我在脚本标签中加载excanvas.js,它就可以正常工作。那就像
<head>
<script src="excanvas.js" type="text/javascript"></script>
</head>
我找不到原因。有人能提出解决方案吗?我已经用过了,而且它对我很有用:
if ($.browser.msie) {
G_vmlCanvasManager.initElement(canvasDiv);
}
完成顶部步骤后,获取画布的上下文:
context = canvasDiv.getContext('2d');
现在使用上下文
变量画一条线。如果希望异步/有条件地加载excanvas,这是可能的
第一,画布元素(S)不能存在于页面上直到>“强”> EXANVAS已经加载和初始化,所以考虑生成它们,或者异步加载它们。
加载excanvas库后(通过jQuery、requirejs等),调用以下命令:
G_vmlCanvasManager.init_(document);
这将调用管理器的内部init函数,该函数通常侦听document ready(通常已启动)。感谢您的重播。在head部分的script标记中包含excanvas.js对我来说效果很好。但在运行时附加excanvas.js时不工作。