[HTML/CSS/JS] Bild in Diashow zentrieren

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • [HTML/CSS/JS] Bild in Diashow zentrieren

    Hallo zusammen,

    ich hätte folgenden Code:

    Quellcode

    1. <html>
    2. <head>
    3. <meta http-equiv="pragma" content="no-cache" />
    4. <title>Secound Monitor-View - Archery Results</title>
    5. <style type="text/css">
    6. h1 {
    7. text-align:center;
    8. }
    9. #laufschrift_1 {
    10. position:absolute;
    11. top:0px;
    12. height:50px;
    13. font-size:30pt;
    14. z-index:999;
    15. }
    16. #anzeige {
    17. position:absolute;
    18. top:50px;
    19. width:99%;
    20. }
    21. #laufschrift_2 {
    22. position:absolute;
    23. bottom:0px;
    24. height:50px;
    25. font-size:30pt;
    26. z-index:100;
    27. display:none;
    28. }
    29. </style>
    30. <script type="text/javascript" src="templates/jquery-1.9.1.min.js"></script>
    31. <script type="text/javascript">
    32. var ausgabe;
    33. window.onload = function(){
    34. var step = 125;
    35. var old_posi;
    36. window.setInterval(function(){
    37. window.scrollBy(0, step);
    38. if (old_posi == window.pageYOffset)
    39. {
    40. window.scrollTo(0, 0);
    41. }
    42. old_posi = window.pageYOffset;
    43. document.getElementById("laufschrift_1").style = "top:"+window.pageYOffset+"px;";
    44. document.getElementById("laufschrift_2").style = "top:"+(window.pageYOffset + self.innerHeight - 50)+"px;";
    45. }, 3000);
    46. };
    47. $("document").ready(function(){
    48. var info;
    49. var info = new Array();
    50. var ausgabe;
    51. var status_diashow = 0;
    52. var gallery;
    53. var bilder;
    54. var laufschrift = Array();
    55. setInterval(loadInfo, 1000);
    56. function loadInfo() {
    57. var http = null;
    58. if (window.XMLHttpRequest) {
    59. http = new XMLHttpRequest();
    60. } else if (window.ActiveXObject) {
    61. http = new ActiveXObject("Microsoft.XMLHTTP");
    62. }
    63. if (http != null) {
    64. http.open("GET", "templates/sec_moni.txt", true);
    65. http.onreadystatechange = function() {
    66. if (http.readyState == 4) {
    67. ausgabe = http.responseText.split("-;-");
    68. var anzeige = ausgabe[0].split("_");
    69. gallery = ausgabe[1];
    70. gallery = gallery.split(" | ");
    71. bilder = gallery.length;
    72. if ((info[0] != anzeige[0]) || (info[1] != anzeige[1])) {
    73. info = Array();
    74. info[0] = anzeige[0];
    75. info[1] = anzeige[1];
    76. if (info[0] == 1) {
    77. document.bgColor = "black";
    78. document.getElementById("anzeige").innerHTML = "";
    79. status_diashow = 0;
    80. } else if ((info[0] >= 2) && (info[0] <= 4)) {
    81. document.bgColor = "white";
    82. loadSide(info[0],info[1]);
    83. status_diashow = 0;
    84. } else if (info[0] == 5) {
    85. document.bgColor = "black";
    86. status_diashow = 1;
    87. }
    88. }
    89. var laufschrift_check = ausgabe[2].split(" | ");
    90. if (laufschrift_check[0] == 1)
    91. {
    92. laufschrift[0] = laufschrift_check[0];
    93. laufschrift[1] = laufschrift_check[1];
    94. }
    95. else
    96. {
    97. laufschrift[0] = 0;
    98. }
    99. }
    100. };
    101. http.send(null);
    102. }
    103. }
    104. setInterval(delete_cache,5000);
    105. function delete_cache()
    106. {
    107. ausgabe = {0:0, 1:0};
    108. info = {0:0, 1:0};
    109. }
    110. var akt = 0;
    111. setInterval(function ()
    112. {
    113. if (status_diashow == 1)
    114. {
    115. var maxlength = screen.availHeight - 150;
    116. var maxwidth = screen.availWidth - 50;
    117. var left = (screen.availWidth - maxwidth) * 20;
    118. var top = (screen.availHeight - maxlength) / 2;
    119. document.getElementById("anzeige").innerHTML = "<img align="center" style="align:center; max-height:"+maxlength+"px; max-width:"+maxwidth+"px;" src="gallery/"+gallery[akt]+"" />";
    120. document.getElementById("anzeige").style = "left:"+left+"px;";
    121. document.getElementById("anzeige").style = "top:"+top+"px;";
    122. akt = akt+1;
    123. if (akt == bilder) {
    124. akt = 0; }
    125. }
    126. }, 5000);
    127. });
    128. </script>
    129. </head>
    130. <body>
    131. <div id="anzeige">
    132. <center>Seite wird geladen</center>
    133. </div>
    134. </body>
    135. </html>
    Alles anzeigen


    Mein Problem ist jetzt, wenn die Diashow läuft, krieg ich einfach die Bilder nicht zentriert (horizontal und vertikal). Ich habs schon über JS (siehe den Versuch)und CSS versucht, aber die rühren sich nicht aus dem linken oberem Eck raus. Mit Kann mir da bitte jemand helfen?

    LG

    Fipsi
  • Zeile: 143

    Quellcode

    1. "<img align="center" style="align:center; max-height:"+maxlength+"px; max-width:"+maxwidth+"px;" src="gallery/"+gallery[akt]+"" />";


    Wenn ich mich jetzt nicht total irre, kann das Beispiel gar nicht funktionieren, da du vergisst die Doublequotes zu escapen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Active Record ()

  • Exi schrieb:

    Hast du eben den Link zu einer funktionsfähigen Testseite da?

    Sonst muss ich das erstmal zum laufen so bekommen :P


    Sorry, nein, hab zur Zeit keinen Server und das Script ist eigentlich auch nicht für's WWW gedacht, da keine wirklichen SIcherheitsvorkehrungen im Skript sind.


    Active Record schrieb:

    Zeile: 143

    Quellcode

    1. "<img align="center" style="align:center; max-height:"+maxlength+"px; max-width:"+maxwidth+"px;" src="gallery/"+gallery[akt]+"" />";


    Wenn ich mich jetzt nicht total irre, kann das Beispiel gar nicht funktionieren, da du vergisst die Doublequotes zu escapen.


    Schlag mich, aber in meinem code sind die Doucleqoutes escapt, keine Ahnnung, warum nicht in der Zeile, die du da jetzt rausgezogen hast. Und eine Fehlermeldung krieg ich ja auch nicht.

    stealth_axg schrieb:

    Ich würde dem

    Quellcode

    1. <div id="anzeige">

    mal das CSS

    Quellcode

    1. text-align:center;

    zuweisen


    Auf die Idee bin ich auch schon gekommen, ist aber leider nicht machbar, da, wie man in dem Skript sehen kann (?), auch andere Seiten, mit Text, angezeigt werden können, und die sollen nicht zentriert sein.

    Edit: letzteres hab ich gerade nur mal ausprobiert, das hat eh nicht mal geklappt
  • Fipsi schrieb:


    Sorry, nein, hab zur Zeit keinen Server und das Script ist eigentlich auch nicht für's WWW gedacht, da keine wirklichen SIcherheitsvorkehrungen im Skript sind.

    Dafür gibt es Dienste wie jsfiddle.net/. Grade CSS, HTML und JS aufteilen und den Link hier reinstellen. ;)
  • Hab mir das mal als alert ausgeben lassen:

    Quellcode

    1. <img align="center" style="align:center; max-height:874px; max-width:1230px;" src="gallery/426119_4896002722_799607138_n.jpg" />


    Und am Anfang hatte ich das mal jQuery. Hatte aber irgendwie gesponnen und dann hab ich's wieder so gemacht. Vllt. änder ich das bald wieder.
  • Okay, fang ich mal an..^^

    • Die Seite soll normalerweiße auf Vollbildmodus geschaltet werden (also nicht das Script, sondern das Broswerfenster)
    • Auf der Seite können mehrere Sachen angezeigt werden: Startlisten, Ergebnislisten, Vereinslisten, n schwazer Bildschirm und eben die Diashow
    • Zusätzlich kann unabhängig von allem anderem ein Lauftext am oberen Bildschirmrand (60 px) optional dazu geschalten werden
    • Das Bild der Diashow soll nun auf die verbliebene Höhe und Breite des Bildschirms horizontal und vertikal zentriert sein
    • Die größe der Bilder wird errechnet, bleibt aber proportional.
    • Und ja, die Bild-URL wird aus der Datei gelesen.