Autor Zpráva
vahrner
Profil
Dobrý den,

Na adrese ZDE jsem narazil na skvělý návod na tabulku zobrazenou před stránkou, které se zatmí pozadí. Tabulku jsem si předělal na odesílací formulář, přidal PHP funkci, ale potřeboval bych ještě, aby se ten formulář zobrazil přímo při načtení stránky a ne až po kliknutí, a pak ještě, aby se okno po odeslání formuláře zavřelo.

Bohužel se mi nedaří zprovoznit funkci $(document).ready(function(){ a ani přidat funkci uzavírající dialog k potvrzovacímu tlačítku. Jistě je tu někdo chytřejší - byl by někdo takový ochotný mi poradit?

Moje zkušební ukázka: Odkaz
Witiko
Profil
vahrner:
$(document).ready není nativní funkce, nýbrž metoda frameworku jQuery. Řešení je snadné - umístit script na konec těla stránky (<body>),
vahrner
Profil
Witiko:
a mohl byste mi prosím ukázat jak přesně to zapsat? Je mi to trapný, ale já umím jen html, css a učím se PHP - javascript a ani žádná z jejích knihoven není zrovna mojí doménou ...
Witiko
Profil
vahrner:
narazil na skvělý návod
Ten uveřejněný kód mi přijde zbytečně složitý. Doporučuji k pozornosti toto téma, kde byla poptávána podobná funkcionalita. Vše běží pod vanilkovým javascriptem bez knihoven. Ukázkový kód:
<style>
  html, body {
    margin: 0px;
  } #okno {
    width: 500px;
    height: 500px;
    line-height: 500px;
    text-align: center;
    border: 1px solid #000;
    background-color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -250px; 
    margin-top: -250px;
    z-index: 2;
  } #zamlžení {
    background-color: #000;
    opacity: 0.75;
    filter: alpha(opacity=75);
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
</style>

Obsah stránky - <a onclick="ukaž();">Zobrazit okno</a>
<div id="kontejnerProOkno">
  <div id="zamlžení"></div>
  <div id="okno">
    <a onclick="skryj();">Skrýt okno</a>
  </div>
</div>

<script>
  var element = kontejnerProOkno || document.getElementById("kontejnerProOkno");
  function ukaž() {
    element.style.display = ""; // Smaže přímou deklaraci css
  } function skryj() {
    element.style.display = "none"; // Přepíše přímou deklaraci z block zděděného z div na none
  }
</script>
Do <div id="okno"> si můžete vložit prakticky libovolný obsah. Ukázka je jednoduchá a se základní znalostí HTML a CSS byste neměl mít problém ji bez větších potíží chápat. V případě nejasností se neváhejte zeptat.
vahrner
Profil
Witiko:
Ach, díky moc, prostuduju to :)

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0