Hallo,
Ik heb een functie die een balk laat zien met een tekst erin. Maar nu wil ik dat hij die na 5 seconden ook weer uit laat faden.
Mijn code:
Maar dat werk niet..PHP Code:
<?php
function succes($tekst)
{
?>
<div class="succes"><?= $tekst ?></div>
<script type="text/javascript">
$(function() {
setTimeout(function() {
$(".succes").fadeOut();
}, 2000);
});
</script>
<?php
}
?>
- div uit faden na 5 seconden
-
14-01-2010, 07:42 #1
- Berichten
- 394
- Lid sinds
- 15 Jaar
div uit faden na 5 seconden
-
-
14-01-2010, 08:58 #2
- Berichten
- 257
- Lid sinds
- 15 Jaar
Waarom de punt '.' in '$(".succes").fadeOut();'?
Edit: ervan uitgaande dat de het $-teken voor getElementById staat denk ik dat je geen 'class' maar een 'id' moet definieren:
Code:<?php function succes($tekst) { ?> <div id="succes"><?php $tekst ?></div> <script type="text/javascript"> (function() { setTimeout(function() { $("succes").fadeOut(); }, 2000); }); </script> <?php } ?>
<?= ==> <?php
Probeer het eerst eens in gewoon html/javascript te maken. Ik heb fadeout vervangen door visibility hidden omdat ik geen fadeOut() functie heb. Jij wel mag ik hopen?!
Code:<div id="succes">test</div> <script type="text/javascript"> setTimeout(function() { document.getElementById('succes').style.visibility = 'hidden'; }, 2000); </script>
Code:<?php function succes($tekst) { ?> <div id="succes"><?php $tekst ?></div> <script type="text/javascript"> setTimeout(function() { document.getElementById('succes').style.visibility = 'hidden'; }, 2000); </script> <?php } ?>
Ik denk dat het voor jezelf handig is om met kleine stapjes de fouten eruit te halen:
Begin met een browser zoals Firefox waarmee je met de ingebouwde error-console fouten kunt opsporen in je Javascript.
Gebruik eerst simpele functies en zorg dat die doen wat je verwacht.
Pas het dan zo aan dat het doet wat je wilt.
Als dat allemaal werkt bouw je je PHP eromheen.Laatst aangepast door Ruud van der Velden : 14-01-2010 om 09:30 Reden: Automatisch samengevoegd.
-
14-01-2010, 09:55 #3
- Berichten
- 330
- Lid sinds
- 18 Jaar
De $ is een jQuery symbool, dus dat is allemaal correct en moet je laten staan (wel even controleren natuurlijk of je jQuery geinclude hebt).
Zo op het eerste gezicht zou het geheel moeten werken. En wat krijg je terug als je deze code gebruikt (meestal kan je met alerts al redelijk goed debuggen en de fout achterhalen):
Code:<script type="text/javascript"> $(function() { setTimeout(function() { alert("Timeout werkt wel!"); }, 2000); }); </script>
Ps: Ik heb laatst een keer gemerkt dat wanneer ik meerdere $(function() { gebruikte het javascript niet meer werkte om één of andere duistere reden. Nadat ik dit vervangen had in $(document).ready(function(){ werkte het wel weer.Laatst aangepast door Arjen Rademaker : 14-01-2010 om 10:17
-
14-01-2010, 10:52 #4
- Berichten
- 257
- Lid sinds
- 15 Jaar
Sorry, ik kende die notatie niet en het ontbrak ook in de openingspost.
-
15-01-2010, 13:34 #5
- Berichten
- 1.001
- Lid sinds
- 17 Jaar
wat Arjen al zei linkje misschien heb je er iets aan http://docs.jquery.com/Effects/fadeOut
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic