jquery - ¿Posible hacer que Excanvas trabaje en IE 8?
internet-explorer-8 beautytips (7)
Solía trabajar en un complemento de jQuery llamado ''BeautyTips'' y funcionaba bien. Pero, desde que instalé IE 8, este complemento deja de funcionar porque necesita que Excanvas haga que IE dibuje vectores, imágenes, etc.
He intentado descargar la versión más reciente de Excanvas pero no funciona en absoluto ...
¿Está seguro de que tiene instalada la versión más reciente de excanvas.js? (lanzado en marzo de 2009, alojado en la nueva página del proyecto Google Code)
Utilicé el complemento Beauty Tips en IE8 y AFAIK funcionó en el modo nativo de IE8.
Agregar una etiqueta de lienzo como una cadena de html con jquery no funciona con la nueva versión de excanvas. Debe usar document.createElement (''lienzo'') primero.
El nuevo modo ''estándar'' de IE8 desactiva algunas características no estándar. Entre ellos VML, que es utilizado por excanvas. Acabo de configurarlo para el modo ''estándar'' de IE7, así que todavía funciona.
<meta http-equiv="X-UA-Compatible" content="IE=7" />
Frustrante, pero no sé de ninguna ventaja traída por IE8.
Intente añadir el elemento de lienzo al documento antes de inicializarlo utilizando excanvas:
var foo = document.getElementById("targetElementID");
var canvas = document.createElement(''canvas'');
canvas.setAttribute("width", 620);
canvas.setAttribute("height", 310);
canvas.setAttribute("class", "mapping");
foo.appendChild(canvas);
canvas = G_vmlCanvasManager.initElement(canvas);
La última versión del plugin bt soluciona este problema para mí.
Sí, tengo excanvas que trabajan en el modo de estándares IE8 (solo probado para el uso que requerimos). En la función CanvasRenderingContext2D_ comenté en la línea:
//el.style.overflow = ''hidden'';//fix IE8
El ancho y alto del objeto del nodo era de 0px por 0px, por lo que no establecer el desbordamiento en oculto hizo que el elemento representado fuera visible.
Cambié un poco el orden de creación del canvasPieTimer para obtener el resultado requerido. Espero que esto sea útil.
Si alguien todavía tiene este problema: Beauty Tips versión 0.9.5 soluciona este problema. sin embargo, si tiene que usar una versión anterior (como yo, ya que la nueva versión introdujo un problema de los consejos que se cierran prematuramente en mi página), debe reemplazar la línea 530 con estas líneas:
var canvas = document.createElement(''canvas'');
$(canvas).attr(''width'', (numb($text.btOuterWidth(true)) + opts.strokeWidth*2)).attr(''height'', (numb($text.outerHeight(true)) + opts.strokeWidth*2)).appendTo($box).css({position: ''absolute'', top: $text.btPosition().top, left: $text.btPosition().left, zIndex: opts.boxzIndex});
Espero eso ayude.