Ga naar inhoud

Firefox lijkt te crashen bij window.close()


Aanbevolen berichten

Ik heb binnen een intranet-omgeving (dus helaas niet beschikbaar voor anderen) een functie die in een popup een Java applet laadt om labels te printen. De Java applet is [url=http://code.google.com/p/jzebra/]jZebra[/url]. Het werkt redelijk simpel: op basis van een aantal parameters wordt met een druk op een form button de volgende javascript functie uitgevoerd om een nieuwe tab te openen: [code:1:28962fe0ae] // big label $('button[name="label_big"]').click(function(){ var counter = Number($('input[name="counter"]').val()); window.open(base_print_url + '/' + size + '3253/1556587/' + counter, 'print_label_window' ); $('input[name="counter"]').val(counter + 1); }); // Enable go next button $('button[name="label_small"], button[name="label_big"], button[name="label_none"]').click(function(){ $('button[name="next_order"]').removeAttr('disabled'); }); [/code:1:28962fe0ae] Die opent de volgende template: [code:1:28962fe0ae]<!DOCTYPE html> <html> <head> <script> function go_print() { var applet = document.jzebra; if (applet != null) { // Select default printer by printer name applet.findPrinter("{machine_name}"); // Send characters/raw commands to applet using "append" applet.append("{label}"); // Send characters/raw commands to printer applet.print(); } } function jzebraDonePrinting() { window.close('print_label_window'); } </script> </head> <body onload="go_print()"> <applet name="jzebra" code="jzebra.PrintApplet.class" archive="{applet_path}" style="width: 50px; height: 50px;"></applet> Bezig met afdrukken, moment s.v.p. </body> </html>[/code:1:28962fe0ae] Dit werkte tot voor kort goed, maar vandaag kreeg ik van een collega door dat iedere keer als deze functie wordt aangeroepen weliswaar het label geprint wordt, maar Firefox crasht. Van het crashrapport word ik geen pepernoot wijzer. Het stomme is: als ik de pagina direct aanroep met dezelfde parameters, Firefox niet crasht. Het label wordt normaal geprint, alleen sluit het tabblad niet. Dat laatste is op zich logisch, aangezien je alleen tabbladen kunt sluiten met window.close() indien ze met window.open() geopend zijn. Mijn vermoeden is daarom dat het hem zit in de window.close(). Aan de andere kant is dit zo'n algemeen bekende en gebruikte functie, dat ik het dan weer apart vind dat ik er niets over terugzie in Google. De gebruikte browser is Firefox, versie 22. Dat is ook de enige browser die de betreffende afdeling tot de beschikking heeft. Nu viel me vorige week (toen versie 22 uitkwam) op dat er wel meer 'aparte' dingen in Firefox 22 zitten, misschien kan het met die update te maken hebben? Tips zijn van harte welkom. :)
Link naar reactie
In 21 heb ik er vrijwel nooit last van gehad, maar sinds anderhalve week geleden Fx 22 is uitgekomen, ben ik niet meer zo blij met die browser. Maar ja: om nu ineens in het hele bedrijf een andere browser te gaan installeren voor één akkefietje vind ik ook weer zo wat. :) Ik heb er wel wat aanwijzingen over gevonden overigens; het lijkt erop dat sommige virusscanners (o.a. Norton) nogal eens dwars kunnen liggen. Ik ga nu eens kijken of ik het probleem kan omzeilen door niet met een popup te werken, maar met een iframe of hidden div ofzo.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...