Hallo daar programmeren peps! Ik heb een vraag re: jQuery. We hebben een softwaretoepassing die een zeer groot HTML-rapport produceert ... groot in de orde van 500-2000 afgedrukte pagina's. Het kan Google Chrome tussen de 12-20 seconden nodig hebben om het van de harde schijf te laden.
Er is een JavaScript in gebruik dat alleen dient om de HTML-versie van het rapport wat extra functionaliteit te geven. Op dit moment worden alle gebeurtenissen afgevuurd van inline HTML onclick
s enzovoort.
Als ik convert naar jQuery en selecteurs gebruik om de gebeurtenissen te binden, kunnen de selectors gemakkelijk 10 van duizenden elementen matchen. Bovendien zou de gebruikelijke manier om jQuery te gebruiken (bijv., $ (document) .ready()
) ervoor zorgen dat de klikgebeurtenis niet vuurt totdat het document volledig is geladen.
So the questions are:
Is jQuery up to this task? Or am I better suited leaving inline script?
If it is, are there certain techniques I need to use to make it work well?
And is there a way to circumvent the "no events until document load" scenario?
And a secondary question (this one just occurred to me as I was writing this):
This report is being sold to a client. What are my license obligations if jQuery is included as apart of the report?
Edit
@ jfriend00: Ik heb een beetje een verlies geleden over hoe dit te doen (het rapport opsplitsen). Het rapport wordt uitgegeven in 2 formaten: HTML en PDF. De klanten willen een digitale handleiding beschikbaar hebben waarop ze secties kunnen afdrukken. Ze willen ook de HTML-versie omdat deze ankers bevat die belangrijke onderdelen koppelen. Het JavaScript zorgt voor een pop-up die een weergave biedt van de onderliggende gegevens waarop het rapport is gebaseerd. Wat er is gebeurd, is dat we een schaalprobleem hebben tegengekomen. De gegevens die worden geanalyseerd, zijn enorm toegenomen en dat geldt ook voor de omvang van het resulterende rapport.
Om vertrouwelijke redenen kan het rapport niet online of op een intern intranet worden weergegeven. Het moet een deliverable zijn die op een lokale machine voor individuen wordt uitgevoerd.
Als iemand tips heeft over hoe je dit op een elegante manier moet aanpakken, zou ik graag je ideeën horen. Dit is een probleem waar ik al een tijdje mee te maken heb.