我使用像$.getScript("excanvas.js", function(data){});这样的jQuery $.getScript()方法将脚本动态加载到文档中
在create canvas上,我为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>我找不到原因。谁能给出一个解决方案?
发布于 2013-07-10 21:06:15
我已经用过它了,它对我很有效:
if ($.browser.msie) {
G_vmlCanvasManager.initElement(canvasDiv);
}在完成第一步之后,获取画布的上下文:
context = canvasDiv.getContext('2d');现在使用context变量绘制这条线。
发布于 2013-08-30 05:01:43
如果你想异步/有条件地加载excanvas,这是可能的。
首先是as the instructions state,在 excanvas加载和初始化之后,canvas元素在之前不能存在于页面上,因此请考虑生成它们或在以后异步加载它们。
一旦加载了excanvas库(通过jQuery、requirejs等),调用以下代码:
G_vmlCanvasManager.init_(document);这将调用管理器的内部init函数,该函数通常侦听文档就绪(通常已经触发)。
https://stackoverflow.com/questions/17571035
复制相似问题