Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Excanvas.js不';在IE8中我不工作_Javascript_Canvas_Internet Explorer 8_Excanvas - Fatal编程技术网

Javascript Excanvas.js不';在IE8中我不工作

Javascript Excanvas.js不';在IE8中我不工作,javascript,canvas,internet-explorer-8,excanvas,Javascript,Canvas,Internet Explorer 8,Excanvas,尝试在IE8中使用画布效果。使用excanvas.js在IE7中没有问题,但在IE8中,它不起作用。效果名为ECOTree,我已经完成了所有的技巧和所有的修改。在IE8中运行这种效果有什么建议吗 以下是ecotree.js中ie8的修改代码: // Make the <canvas> element. var canvas = document.createElement('canvas'); jQuery(canvas).attr('width', 2000).attr('heig

尝试在IE8中使用画布效果。使用excanvas.js在IE7中没有问题,但在IE8中,它不起作用。效果名为ECOTree,我已经完成了所有的技巧和所有的修改。在IE8中运行这种效果有什么建议吗

以下是ecotree.js中ie8的修改代码:

// Make the <canvas> element.
var canvas = document.createElement('canvas');
jQuery(canvas).attr('width', 2000).attr('height', 7000).attr('id', 'ECOTreecanvas').appendTo(this.treeContainer);
if ((jQuery.browser.msie) && (parseInt(jQuery.browser.version, 10)<=8)){
    // For Internet Explorer, have excanvas initialize the canvas method
    // Modification, the major versions greater than 8 don't need excanvas.
    canvas.setAttribute('width', '2000');
    canvas.setAttribute('height', '7000');
    canvas.setAttribute('id', 'ECOTreecanvas');
    this.treeContainer.append(canvas);
    if (typeof G_vmlCanvasManager != 'undefined') {
        canvas = G_vmlCanvasManager.initElement(canvas);
    }
}
//创建元素。
var canvas=document.createElement('canvas');
jQuery(canvas).attr('width',2000).attr('height',7000).attr('id','ECOTreecanvas').appendTo(this.treeContainer);

如果((jQuery.browser.msie)和&(parseInt(jQuery.browser.version,10)您发布的任何内容看起来都不正确,您需要提供更多详细信息,但是我可以说您的许多代码是多余的

// Make the <canvas> element.
var canvas = $('<canvas id="ECOTreecanvas" width="2000" height="7000"></canvas>').appendTo($(this.treeContainer));
if (typeof G_vmlCanvasManager != 'undefined') {
    G_vmlCanvasManager.initElement(canvas);
}
//创建元素。
var canvas=$('').appendTo($(this.treeContainer));
if(G_vmlCanvasManager的类型!=“未定义”){
G_vmlcavasmanager.initElement(画布);
}

我在这里假设您仅在浏览器旧时才包括excanvas。

我通过强制事件更新canvas元素来解决问题。我知道这是一种非传统的机制,但显然用jquery ready方法更新是不够的。

显示代码。excanvas在IE8中对我很好。可能是的重复,你是对的,其他有很多多余的代码,你的假设是可以接受的,我只是在浏览器旧的时候加入excanvas
仍然不工作,有什么建议,我做错了什么,或者知道了什么新把戏?@Pymoo如果你自己解决了,那么就把你的解决方案作为答案分享,然后接受它。你永远不知道别人是否有sam(问题:)