Romero: Browserfestlegung für neues geöffnetes Fenster

hallöchen liebe gemeinde...

ich hab da ein problem.ich hab für ein projekt eine große *.hta-datei erstellt.mit welcher ich diverse stücklisten erstelle.

nun bin an einem punkt angekommen wo ich nich direkt weiter komme bzw wo ich euren rat benötige wie ich am besten fortfahre...

ich habe nun diese listen erstellt,will diese aber auch auf papierform ausgedruckt haben... dazu habe ich ein druckfenster erstellt,wo da diese listen vorkommen sollen.

nun zu meinen fragen.wie lege ich fest das es nur im firefox-browser das fenster erstellt?weil wenn ich das fenster öffnen lasse,dann ist dieser ie vorhanden (oben in der leiste zuerkennen).obwohl ich firefox als standardbrowser hab.warum öffnet er das fenster im ie und wie kann ich diese gesamte *.hta so aufbauen das es nur mit dem firefox funktioniert?weil firefox ist schon für mich der bessere browser...

und zum anderen wie lege ich diesen druckerfenster so fest das er da z.b. die langen listen so darstellt,das es auf eine a4 seite passt,welche 2 spalten besitzt.hab zwar viele css-style's gesehen und gelesen,weiß aber nich was genau ich da nehmen soll bzw wie ich das für mich umsetzen soll?

wenn ich z.b. die liste im word einfüge,erstelle ich 2 spalten und druck es mir dann aus.es passt immer auf eine a4 seite.nun will ich das diese liste ebenfalls erstmal zu sehen ist,genau so wie sie später auf dem papier und dann soll sie auch dementsprechend ausgedruckt werden.

ich hab dazu erstma n kleinen versuch gestartet.der code sieht da wie folgt aus:

  
		//----------------------------------------  
		//--Liste im Druckfenster ausgeben/drucken  
		//----------------------------------------  
		var Drucken_ohne_BTH = function()  
		{  
			var fenster = window.open( "", "Druckfenster", "width=800,height=800,left=500,top=100" );  
			fenster.focus();  
  
			fenster.document.open();  
			fenster.document.write( "<html><head><title>Druckfenster</title>" );  
			fenster.document.write( "<style type='text/css'>" );  
  
			fenster.document.write( "div.print { margin: 0 auto; column-count:2; -moz-column-count:2 }" );  
  
			fenster.document.write( "</style>" );  
			fenster.document.write( "</head><body>" );  
			fenster.document.write( "<div id='print' class='print'></div>" );  
  
			for( var i = 0; i < out.length; i++ )  
			{  
				fenster.document.getElementById( "print" ).innerHTML += out + "<br>";  
			};  
  
			fenster.document.write( "</body></html>" );  
			fenster.document.close();  
		};

lieben gruß romero

  1. Lieber Romero,

    *.hta ist IE-only. Das haben proprietäre Dinge so an sich, dass sie nicht allgemein überall tun...

    Liebe Grüße,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
    1. Lieber Romero,

      *.hta ist IE-only. Das haben proprietäre Dinge so an sich, dass sie nicht allgemein überall tun...

      Liebe Grüße,

      Felix Riesterer.

      oh ha.das wusste ich nicht.kann man das irgendwie umgehen?

      vielen dank.

      1. Moin!

        *.hta ist IE-only. Das haben proprietäre Dinge so an sich, dass sie nicht allgemein überall tun...

        oh ha.das wusste ich nicht.kann man das irgendwie umgehen?

        Wenn du auf .hta verzichtest, dann ja. Dürfte aber schwierig werden, die von dir angesammelte Funktionalität so nett verpackt in einer Datei anzubieten. Zumal die Frage ist, welche spannenden, nur in .hta erreichbaren Funktionen du benutzt, um deine Stücklisten zu realisieren. Irgendwo muss das ja dauerhaft zwischengespeichert werden.

        - Sven Rautenberg

        1. hy auch...

          diese *.hta-datei liegt lokal aufn rechner.diese soll dann wie eine art programm so genutzt werden,das man dann eine excel-tabelle ausliest,die passenden elemente in verschiedenen ordnern sucht,sortiert und dann ausgibt.das passt ja alles wunderbar...

          das mit dem hta wurde mir mal von einem angeboten und ich hab das ganze nur viel mehr erweitert und vergrößert,damit das rauskommt was rauskommen soll :)

          klar gibt es mehrere möglichkeiten sowas zu realisieren,aber mir war das mit hta doch realiv einfacher und verständlicher.

          hier mal ein bild wie es aussieht:

          @felix: naja wie du oben erkennen kannst,ist dieses interne fenster schon vergeben.deshalb das extrafenster,damit das andere stehen bleibt und man sich da diese unterschiede nochmal angucken kann bevor man sich diese ausdruck...

          lg romero

          1. Lieber Romero,

            @felix: naja wie du oben erkennen kannst,ist dieses interne fenster schon vergeben.

            ich fürchte, Du hast mich nicht verstanden. Ich rede nicht von irgendeinem "internen Fenster", ich rede von "dem" Fenster, das, was Du da mit türkisem Hintergrund im Browser siehst. Dort wird per JavaScript ein neues Element eingefügt, was aber für den Betrachter nicht sichtbar ist. Im Browserfenster gilt ein anderes Stylesheet, als für den Drucker - oder hast Du Dich mit Stylesheets noch nicht befasst...?

            Für media=screen,projection gilt beispielsweise:
            body .printable { display: none; }

            Für print gilt stattdessen:

            body * { display: none; }  
            body .printable { display: block; }
            

            Liebe Grüße,

            Felix Riesterer.

            --
            ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
            1. Lieber Romero,

              @felix: naja wie du oben erkennen kannst,ist dieses interne fenster schon vergeben.

              ich fürchte, Du hast mich nicht verstanden. Ich rede nicht von irgendeinem "internen Fenster", ich rede von "dem" Fenster, das, was Du da mit türkisem Hintergrund im Browser siehst. Dort wird per JavaScript ein neues Element eingefügt, was aber für den Betrachter nicht sichtbar ist. Im Browserfenster gilt ein anderes Stylesheet, als für den Drucker - oder hast Du Dich mit Stylesheets noch nicht befasst...?

              Für media=screen,projection gilt beispielsweise:
              body .printable { display: none; }

              Für print gilt stattdessen:

              body * { display: none; }

              body .printable { display: block; }

              
              >   
              > Liebe Grüße,  
              >   
              > Felix Riesterer.  
                
              achso... d.h. das ich wenn ich auf den button drucken klicke,das dann ein stylesheet genommen wird was speziell für das drucken benötigt wird,man es aber nich sieht?!  
                
              nunja so soll es ja auch sein,aber wollte dazu halt ein weiteres fenster öffnen lassen wo man diese listen,das was man druckt,auch sieht.  
                
              klar könnte ich es so machen,aber wollte gern das halt eine art "word-doc" geöffnet wird wo dann die stückliste zum betrachten dargestellt wird.sollte diese dann demjenigen gefallen :) dann druckt er diese liste aus.  
                
              lg romero
              
              1. Lieber Romero,

                es spricht nichts dagegen, das <div class="printable"> im Browserfenster sichtbar zu machen. Wesentlich ist nur, dass das Druck-Stylesheet ausschließlich dieses Element und sonst nichts zu Papier bringt.

                Liebe Grüße,

                Felix Riesterer.

                --
                ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
                1. Lieber Romero,

                  es spricht nichts dagegen, das <div class="printable"> im Browserfenster sichtbar zu machen. Wesentlich ist nur, dass das Druck-Stylesheet ausschließlich dieses Element und sonst nichts zu Papier bringt.

                  Liebe Grüße,

                  Felix Riesterer.

                  ok werde mich da ma durchforsten... wenn ich fragen hab binsch wieder hier :)

                  lg romero

              2. hallöchen ich bin es mal wieder...

                hab es jetzt so gemacht das sich erstmal ein weiteres fenster öffnet.und da geht es schon los.will dann mittels einem button diese seite drucken lassen aber da bringt er mir da folgendes (siehe bild):

                da steht dann oben in der leiste das hier:

                "das anzeigen aktiver inhalte,die auf den computer zugreifen können,wurde für diese datei aus sicherheitsgründen eingeschränkt. Klicken sie hier,um optionen anzuzeigen..."

                wenn ich da aber dann diese geblockten inhalte zulasse,dann klicke ich dann ja auch "ja" und hoffe das es nicht mehr wieder kommt.

                wie kriege ich diese meldung für immer weg?also für diese *.hta-datei?

                lg romero

                1. sorry hatte das bild vergessen :)

                2. Lieber Romero,

                  "das anzeigen aktiver inhalte,die auf den computer zugreifen können,wurde für diese datei aus sicherheitsgründen eingeschränkt. Klicken sie hier,um optionen anzuzeigen..."

                  Du bist ja noch immer ein IE-Sklave... :-/

                  Liebe Grüße,

                  Felix Riesterer.

                  --
                  ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
                  1. Lieber Romero,

                    "das anzeigen aktiver inhalte,die auf den computer zugreifen können,wurde für diese datei aus sicherheitsgründen eingeschränkt. Klicken sie hier,um optionen anzuzeigen..."

                    Du bist ja noch immer ein IE-Sklave... :-/

                    Liebe Grüße,

                    Felix Riesterer.

                    ja leider.ich kriege das auch nicht weg bzw weiß nicht wie? :)

                    weil will das als *.hta ja behalten oder gibt es sowas auch für den firefox?also so eine html-applikation?

            2. Hi,

              oder hast Du Dich mit Stylesheets noch nicht befasst...?

              *.hta-fähige Browser sind doch traditionell eher CSS-unfähig ... ;-)

              cu,
              Andreas

              --
              Warum nennt sich Andreas hier MudGuard?
              O o ostern ...
              Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
      2. Lieber Romero,

        *.hta ist IE-only.
        oh ha.das wusste ich nicht.kann man das irgendwie umgehen?

        Du willst ein (Popup-)Fenster für eine Druckausgabe? Warum muss es ein Popup sein? Warum kannst Du nicht einfach im aktuellen Browserdokument per JavaScript ein neues Element erzeugen (z.B. ein <div>), welches eine besondere Klasse bekommt (<div class="printable">) und welches über das http://de.selfhtml.org/css/formate/einbinden.htm#media@title=Druckstylesheet als einziger Inhalt für den Drucker http://de.selfhtml.org/css/eigenschaften/positionierung.htm#display@title="sichtbar" ist. Wenn Du dann über window.print() den Druckdialog aufrufst, dann brauchst Du überhaupt kein extra Fenster/Tab/Popup.

        Liebe Grüße,

        Felix Riesterer.

        --
        ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)