Ergebnis 1 bis 5 von 5

Thema: DIV Layer einmalig mit Schließ-Funktion

  1. #1
    HTML Newbie
    Registriert seit
    14.07.2012
    Beiträge
    3
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard DIV Layer einmalig mit Schließ-Funktion

    Hallo Zusammen,
    ich möchte einen DIV Layer erstellen der nur einmal pro Besucher angezeigt wird in einer Session. Dieser soll über Klick zu schließen sein. Habe den Code soweit vorbeireitet nur bekomme ich irgendwie den Java Part nicht ans laufen.

    PHP-Code:
    <?php session_start();
    if(
    $_SESSION["welcome"] != true)

       
    $_SESSION["welcome"] = true;

       echo 
    "<div id='layer'>Hier steht der Text, der nur 1x angezeigt werden soll.</br><span id='close'>X</span></div>";
    }  { 
    ?>
    <script type="text/javascript">

    $(document).ready(function(){ 
      $('#close').click(function() { 
        $('#layer').fadeOut(500);
      });
      window.setTimeout(function() {
        win = $(window);
        $('#layer')
          .css({
            'width': layerWidth + 'px',
            'height': layerHeight + 'px',
            'top': '0px',
            'left': '-' + layerWidth + 'px'
          })
          .animate({
            'top': win.height() / 2 - layerHeight / 2,
            'left': win.width() / 2 - layerWidth / 2
        }, 0000);
      }, 0000);
    });
    </script>
    <?php ?>
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru Avatar von synaptic
    Registriert seit
    20.06.2007
    Ort
    Butzbach-Wiesental
    Beiträge
    10.901
    Danke
    45
    Bekam 48 mal "Danke" in 46 Postings
    Blog-Einträge
    1

    Standard AW: DIV Layer einmalig mit Schließ-Funktion

    mag daran liegen dass es javascript ist und nicht java...

    also du hast beim window geschafft die richtige funktion zu nehmen, wieso nimmst du dann an, dass layerwidth und layerheight bereits bekannt sind?
    also das is jetzt mal ungetestet das, was mir direkt ins auge springt und aua schreit..
    dann gibts tools wie firebug fürn firefox, der zeigt einem sämtliche fehler an, sogar mit zeile und zeichen

    probiers nochma, du bis auf nem guten weg, wenn weiterhin nich klappt sag halt nochma besheid dann schau ich mir das mal näher an
    KEIN support via pn, email, messenger oder falsch geposteten threads
    Futter für deine Schnuffelzwerge gibts bei den Schnuffelzwergen TOP Qualität, also klicken und kaufen

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    14.07.2012
    Beiträge
    3
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: DIV Layer einmalig mit Schließ-Funktion

    wieso nimmst du dann an, dass layerwidth und layerheight bereits bekannt sind?
    Das habe ich hier jetzt nicht mit rein kopiert. Das wird über CSS gemacht.
    Hier versändnishalber dann der komlpette Code, aber wie gesagt es liegt nur an der Überagabe des <span id=close> zu dem Javascript.
    Eigenständig ohne den Session String funktioniert der Code.

    PHP-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Unbenanntes Dokument</title>
    <style type="text/css">
    #layer {
        position: absolute;
        left: 0px;
        top: 0px;
        height: 100%;
        width: 100%;
        background-image: url(Bilder/bgface.png);
        background-repeat: repeat;
        text-align: center;
        vertical-align: middle;
    }
    </style>
    </head>
    <?php session_start();
    if(
    $_SESSION["welcome"] != true)

       
    $_SESSION["welcome"] = true;

       echo 
    "<div id='layer'>Hier steht der Text, der nur 1x angezeigt werden soll.</br><span id='close'>X</span></div>";
    }  { 
    ?>
    <script type="text/javascript">

    $(document).ready(function(){ 
      $('#close').click(function() { 
        $('#layer').fadeOut(500);
      });
      window.setTimeout(function() {
        win = $(window);
        $('#layer')
          .css({
            'width': layerWidth + 'px',
            'height': layerHeight + 'px',
            'top': '0px',
            'left': '-' + layerWidth + 'px'
          })
          .animate({
            'top': win.height() / 2 - layerHeight / 2,
            'left': win.width() / 2 - layerWidth / 2
        }, 0000);
      }, 0000);
    });
    </script>
    <?php ?>


    <body>
    </body>
    </html>

  4. #4
    Forum Guru Avatar von synaptic
    Registriert seit
    20.06.2007
    Ort
    Butzbach-Wiesental
    Beiträge
    10.901
    Danke
    45
    Bekam 48 mal "Danke" in 46 Postings
    Blog-Einträge
    1

    Standard AW: DIV Layer einmalig mit Schließ-Funktion

    loool..

    ok ich hab mir das jetzt mal mit etwas mehr zeit angesehen und mit deinem css is auf einmal dein javascript zu 95% überflüssig
    ich hab hier unten mal den code ganz unsauber so gemacht, dass er funktioniert und auch das unnütze javascript entfernt.
    PHP-Code:
    <?php session_start();
    $_SESSION["welcome"] = false// rausnehmen, is nur fürs testen auf false
    if($_SESSION["welcome"] != trueboolsche werte fragt mit auf typengleichheit mit === oder !==

       
    $_SESSION["welcome"] = false;

       echo 
    "<div id='layer'>Hier steht der Text, der nur 1x angezeigt werden soll.</br><span id='close'>X</span></div>";
    }  { 
    ?>
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
    <script type="text/javascript">

    $(document).ready(function(){ 
      $('#close').click(function() { 
        $('#layer').fadeOut(500);
      });
    /*  window.setTimeout(function() {
        win = $(window);
        $('#layer')
          .css({
            'width': $(this).width() + 'px',
            'height': $(this).height() + 'px',
            'top': '0px',
            'left': '-' + $(this).width() + 'px'
          })
          .animate({
            'top': win.height() / 2 - $(this).height() / 2,
            'left': win.width() / 2 - $(this).width() / 2
        }, 0000);
      }, 0000);
      */
    });
    </script>
    <?php ?> <style type="text/css">
    #layer {
        position: absolute;
        left: 0px;
        top: 0px;
        height: 100%;
        width: 100%;
        background-image: url(Bilder/bgface.png);
        background-repeat: repeat;
        background-color: lime;
        text-align: center;
        vertical-align: middle;
    }
    </style>
    also zur erklärung:
    dein css machts js für größe und breite sinnfrei

    im js, meine funktionen;
    $(this).width() und $(this).height() (ok sind nich meine sondern die von jquery)
    die ergebnisse speichert man normalerweise in variablen, hat performancegründe, weil man die gleichen berechnungen nicht jedes mal neu ausführt.

    und nochmal zur info:
    win.height() und win.width() da hast du funktionen benutzt
    'width': layerWidth + 'px',
    'height': layerHeight + 'px',
    'top': '0px',
    'left': '-' + layerWidth + 'px'
    hier hast du variablen benutzt ohne dass diese initialisiert oder deklariert waren!!
    dein javascript weiß doch nicht, was im css steht.. woher solls das auch wissen?
    KEIN support via pn, email, messenger oder falsch geposteten threads
    Futter für deine Schnuffelzwerge gibts bei den Schnuffelzwergen TOP Qualität, also klicken und kaufen

  5. #5
    HTML Newbie
    Themenstarter

    Registriert seit
    14.07.2012
    Beiträge
    3
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: DIV Layer einmalig mit Schließ-Funktion

    Sehr gut, ich danke dir!

Ähnliche Themen

  1. Audiodatei abspielen - aber nur einmalig
    Von MrWeb im Forum HTML & CSS Forum
    Antworten: 1
    Letzter Beitrag: 16.10.2009, 15:41
  2. Game Server (billig einmalig oder billig im monat)...
    Von R|-S!D0 im Forum Webhoster - Provider - (free) Webspace - Server - Domain
    Antworten: 2
    Letzter Beitrag: 15.10.2007, 20:04
  3. Suche eine Funktion wie bei VBA die Controls Funktion
    Von OJMD im Forum Forum für alle anderen Programmiersprachen
    Antworten: 2
    Letzter Beitrag: 28.06.2007, 09:08
  4. Wert aus JS-Funktion an PHP-Funktion übergeben
    Von Agnes im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 17
    Letzter Beitrag: 18.05.2007, 22:53
  5. Background einmalig via CSS festsetzen?
    Von Sullivan im Forum HTML & CSS Forum
    Antworten: 1
    Letzter Beitrag: 22.08.2005, 08:38

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •