2010-06-06 5 views
1

Je me suis cogné la tête contre celui-ci pendant un moment, et je me suis tourné vers les experts pour un conseil.Problème avec le rendu Canvas dans Safari/Opera

J'ai créé un extrait jQuery qui saisit les valeurs d'une table et les trace dans un graphique linéaire sur un élément canvas (également généré par le JS). Tout va bien dans Firefox et Chrome, mais Safari et Opera ne montrent pas les points tracés. J'ai passé en revue dans Firebug, le débogueur de Web Inspector, JSLint, et ai vérifié le balisage avec le validateur de W3, mais ne peux toujours pas trouver quelque chose d'évident évident. J'ai également essayé d'inclure l'élément canvas dans le code HTML plutôt que de le générer dynamiquement, ainsi que de substituer une paire de balises à la balise à fermeture automatique que j'utilisais, sans succès.

Une chance que l'un d'entre vous puisse m'aider?

Merci!

Répondre

0

Je dessine beaucoup de lignes dans Safari si j'ai vérifié mon code et le modèle est ...

beginPath
moveTo
lineTo (s)
closePath ou accident vasculaire cérébral

Dans votre code moveTo est avant beginPath, donc je l'ai changé dans l'une de mes applications et il a arrêté de dessiner, alors essayez de changer les gens.

+0

+100 pour vous, monsieur! C'est exactement ce que le problème était. ÉNORME merci pour la réponse! – Jon

0

Je pense que c'est un problème du moment où vous appelez stroke(). Essayez de ne l'appeler qu'après la boucle for et essayez les différentes positions de l'appel closePath.

+0

Essayé de le sortir de la boucle for et de l'appeler avant et après l'appel closePath, mais pas de dés. Au départ, j'avais l'appel de coup dans la boucle for parce que je voulais seulement que cette partie du chemin soit contournée, mais y a-t-il un moyen plus sensé d'accomplir cela? Quoi qu'il en soit, je ne suis pas sûr que cela ait eu beaucoup d'effet - obtenir toujours cet élément vide dans Safari 4. – Jon