Entwickler-Ecke

Programmiersprachen (Client) - Seite in neuem Fenster (Größe angepasst) öffnen aus xml-Link


DeTomaso33 - Do 11.02.16 16:58
Titel: Seite in neuem Fenster (Größe angepasst) öffnen aus xml-Link
Hallo Profis,

ich habe da ein Problem mit einem alten html-Thema "(HTML) Fenster in bestimmter Größe/Position öffnen". Ich möchte aus einem Link eine neue xml+xsl= html-Seite öffnen, die in Größe und Position vom Standardfenster abweichen soll. Bei einem html-Link sieht meine Lösung so aus. Es funktioniert.


HTML-Dokument
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>1. Seite</title>
   <!--
    function openWindow(theURL, winName, features) { //v2.0
        window.open(theURL, winName, features);
    }
    //-->

</script>
</head>
<body onLoad="openWindow('2te_Seite.html','Fenster 2','toolbar=yes,location=no,status=yes,menubar=yes,scrollbars=no,resizable=yes,width=200,height=400')">
    <a href="2te_Seite.html">2te_Seite.html</a><br></br>
    <a href="2te_Seite.html" onclick="window.open(this.href, 'Fenster 2', 'toolbar=yes,menubar=yes,width=800,height=800,left=100,top=200'); return false">Link</a>
</body>


Hier das Problem. Ich habe es auch schon mit JavaScript als Zusatz versucht!
Es ist ein Teil einer Navigationsliste, aus der ich das Ganze öffne.Es ist der 2.te li-Punkt(Link)!


HTML-Dokument
1:
2:
3:
4:
5:
6:
7:
  <li>Menüpunkt 4
              <ul><li>XML-Test</li>
                  <li><a target="_blank" href="../XML CD-Liste Originale/CD-Bsp2 Größe  Position/cdliste2.xml"><img src="Bilder/i350.gif" /></a></li>
                  <li>Link<a href="../XML CD-Liste Originale/CD-Bsp2 Größe Position/cdliste2.xml" onclick="javascript:window.open(this.href, 'TEST', 'toolbar=yes,menubar=yes,width=800,height=800,left=100,top=200')"></a></li>
                  <li><label id="test" onclick="javascript:window.open(this.href, 'test', 'width=800,height=800')">test12</label></li>
              </ul>
          </li>


Weiß jemand woran es liegt? :?: Ich vermute,dass es mit dem fehlenden Titel-Namen (localhost:92345/.../cdliste2.html)zusammenhängen könnte, der beim Debugging erst entsteht (hier gegeben als Eintrag 'TEST'). Das ist mir beim Wechsel von html zum xml-href aufgefallen.

mfg
DeTomaso33


DeTomaso33 - Mo 15.02.16 17:35

So, bin schon mal ein Stückchen weiter. Ich kann jetzt über den Umweg "Button" das Fenster öffnen (in gewünschter Größe und Position) und mit einem zweiten Button eine Resized-Version erzeugen. Danke an w3schools.
Wenn ich jetzt das Ganze
1. von meinem weiterführenden Link aus schaffe und
2. direkt beim ersten Fenster,das von der xml-Startdatei geladen wird, dann bin ich glücklich! :wink:

Mein weiterer xsl-Code:


XML-Daten
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
            xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
            <xsl:template match="/">
 <script>
          var myWindow;
 
           function openWin() {
                 myWindow = window.open("cdliste2.xml""""width=420, height=500,top=250,left=350");
            }

           function resizeWin() {
                myWindow.resizeTo(500, 700);
                myWindow.focus();
            }
            
</script>
              <html>
              <body>
                <h2>My CD Collection</h2>
                   <table border="1">
                  <tr bgcolor="#9acd32">
                    <th>Title</th>
                    <th>Artist</th>
                    <th>Year</th>
                  </tr>
                  <xsl:for-each select="catalog/cd">
                  <tr>
                    <td><xsl:value-of select="title" /></td>
                    <td><xsl:value-of select="artist" /></td>
                    <td><xsl:value-of select="year" /></td>
                  </tr>
                  </xsl:for-each>
                </table>
                 <br></br>
        <div xml:base="file:///Desktop/">
            <a href="cdliste2.xml" style="font-family:arial;font-weight: bold;" >CD 2</a><br></br>
              </div><br></br>
                  <button onclick="openWin()">Create window</button>
                  <button onclick="resizeWin()">Resize window</button>
                </body>
              </html>
            </xsl:template>
            </xsl:stylesheet>

Das Rezise ist eigentlich überflüssig,da ich direkt die passende Größe wählen werde. Es zeigt nur schön den Unterschied zum "Create"-Button! Beim Ausprobieren geht ganz schön Zeit drauf! Dass ein Umweg auch mal hilfreich sein kann, hätte ich nicht gedacht.

mfg


DeTomaso33 - Di 16.02.16 10:03

Moin,
zu 1.) Ich habe es g e s c h a f f t 8) , indem ich in dem <div> noch folgende Codezeile eingefügt habe.

Xsl-Code:

XML-Daten
1:
  <a href="cdliste2.xml" onclick="window.open(this.href, '', 'toolbar=yes,menubar=yes,width=420,height=800,left=100,top=200'); return false">Link 2</a><br></br>                    


Damit bleibt nur noch Punkt 2.) offen... :arrow:
Also hier soll das Ganze ohne Link oder Button auf die Original-/Ursprungsdatei angewendet werden. Die Datei cdliste.xml liegt auf dem Desktop und soll durch Doppelklick in einer vordefinierten Fenstergröße aufgehen. Das Problem erübrigt sich aber,da ich meine Datei immer über die C#- Anwendung öffnen werde. Wer will kann sich ja noch daran versuchen...

mfg