J'utilise la bibliothèque de graphique FLOT JQuery Plugin et je n'ai pas trouvé de bonne façon de manipuler le redimensionnement du graphique lorsqu'il contient (J'utilise également ExplorerCanvas pour IE afin de pouvoir utiliser Flot, si cela pourrait avoir quelque chose à voir avec cela. Je n'ai pas encore essayé dans aucun autre navigateur) p> 5 Réponses : J'ai semblé avoir trouvé une solution, même si je ne suis pas tout à fait sûr pourquoi ça fonctionne. J'utilise toujours l'approche de l'élimination et de la réduisant le contenant qui semblait être enclin à entrer dans ce qui semblait être une boucle infinie en fonction de ce que le redrawfunc a fait au document. P> Au lieu de cela, j'ai essayé d'utiliser la liaison de redimensionnement de JQuery P> jusqu'à présent, peu importe les autres changements que je fais au document dans le redrawfuncc je n'ai pas eu de problème avec cette approche qui reste bloquée dans une boucle encore. Je ne sais tout simplement pas pourquoi. P> p> J'ai trouvé simplement la liaison à l'événement de redimensionnement sur la fenêtre et appeler la parcelle fonctionne vraiment bien. Par exemple, j'ai mes données et options stockées dans des variables de la page. Ensuite, je l'ai configuré sur $ (document) .Readady (): p>
Voici un exemple de travail de leur site: personnes.iola.dk/olau/flot/ Exemples / ReSize.html
J'aime bien la façon dont vous avez fait cela. Il supprime également la nécessité du plugin de redimensionnement. Le seul inconvénient que j'ai remarqué est un léger adugnant lors du redimensionnement, mais rien de majeur. Merci! Je viens de trouver une solution à cela moi-même. J'ai enveloppé mon appel à La dernière version du API FLOT DOCS , au moins, décrit un événement de redimensionnement qui fonctionne comme annoncé. P>
redimensionner () p>
dit à FLOT de redimensionner la toile de dessin à la taille de la
espace réservé. Vous devez exécuter setupgrid () et dessiner () après
Le redimensionnement de la toile est une opération destructrice. Ceci est utilisé
à l'intérieur par le plugin de redimensionnement. P>
blockQuote>
Le moyen le plus simple consiste à utiliser le plugin de redimensionnement. Il est démontré ici: http://www.flotcharts.org/flot/examples/resize/ a> mais vous n'ajoutez que p>
votes
votes
$ (fenêtre) .Resize (fonction (fonction () {$ .Plot ($ ('# graph_div'), données, opts);}); p> p>
blockQuote>
votes
$. Terrain () code> afin que ce soit la cause initiale de mon problème spécifique, mais FLOT a refusé de redimensionner rapidement même lorsque j'ai utilisé la jQuery
redimensionner < / code> événement. Voici mon code change que tout corrigé:
votes
tracé.Resize (); Plot.SetupGrid (); Plot.Draw (); code> fonctionne pour moi où la parcelle est la suivante:
var tracé = $ .Plot ($ ('# graph_div'), données, opts); code>
votes