|
Categorieën >
Grafisch
Fade effect...
|
|
|
offline
|
MySQL interesse
|
Hallo!
Ik wil graag dat een groen balkje met Gelukt boven aan de pagina weergeven wanneer een actie gelukt is. Nou is het zo dat dat balkje ook weer op moet donderen na 2 seconden.
Krijg dat voor elkaar, alleen, het gaat zo knetter hard. Ik wil eigenlijk dat hij wegfade zeg maar.
Ik heb nu dit:
<script type="text/javascript">
setInterval(disap, 2000);
function disap()
{
var een = document.getElementById('een');
if(een.style.display == 'block')
{
een.style.display = 'none'
}
}
</script>
<div id="een" style="display: block; background: #32A905; height: 40px; text-align:center; line-height: 40px; color: white; font-size:medium;">
Gelukt!
</div>
<script type="text/javascript"> setInterval(disap, 2000); function disap() { var een = document.getElementById('een'); if(een.style.display == 'block') { een.style.display = 'none' } } </script> <div id="een" style="display: block; background: #32A905; height: 40px; text-align:center; line-height: 40px; color: white; font-size:medium;"> Gelukt! </div>
|
11 antwoorden
|
|
|
offline
|
Lid
|
|
|
|
|
offline
|
PHP interesse
|
of als je zin hebt in jQuery (uitbreiding op js) kan je fadeIn() gebruiken
|
|
|
|
offline
|
Crew PHP
|
jQuery is geen uitbreiding op JS hoor  Het zijn scripts die werken in javascript. Dat een framework genoemd
Maar het is zeker een aanrader, want als je dat hebt hoef je alleen maar dit te doen:
$("#een").fadeOut();
// of:
$("#een").fadeOut('fast');
$("#een").fadeOut('slow');
$("#een").fadeOut(2000); // in milisec
$("#een").fadeOut(); // of: $("#een").fadeOut('fast'); $("#een").fadeOut('slow'); $("#een").fadeOut(2000); // in milisec
en zo heb je ook fadein, en slideUp en slideDown en veel meer
|
|
|
|
offline
|
HTML gevorderde
|
Maar je kan ook
$('#een').animate({'opacity':0}, 2000); // in ms
$('#een').animate({'opacity':0}, 2000); // in ms
doen.
Ik vind zelf de animate optie veel beter dan de fadeOut enzo.
|
|
|
|
offline
|

Senior Member
|
Waldio, in welke vorm zou animate beter zijn?
Aangezien de fadeOut functie een directe verwijzing is naar animate en dus hetzelfde uitvoert ;)
Uit de jQuery source:
// Generate shortcuts for custom animations
jQuery.each({
slideDown: genFx("show", 1),
slideUp: genFx("hide", 1),
slideToggle: genFx("toggle", 1),
fadeIn: { opacity: "show" },
fadeOut: { opacity: "hide" }
}, function( name, props ) {
jQuery.fn[ name ] = function( speed, easing, callback ) {
return this.animate( props, speed, easing, callback );
};
});
// Generate shortcuts for custom animations jQuery.each({ slideDown: genFx("show", 1), slideUp: genFx("hide", 1), slideToggle: genFx("toggle", 1), fadeIn: { opacity: "show" }, fadeOut: { opacity: "hide" } }, function( name, props ) { jQuery.fn[ name ] = function( speed, easing, callback ) { return this.animate( props, speed, easing, callback ); }; });
On topic, ik zou inderdaad ook gaan voor een framework zoals jQuery alhoewel er natuurlijk ook tegenhangers zijn die net zo goed werken. De belangrijkste reden is nog wel dat een framework meestal cross browser werkt wat een hoop problemen scheelt.
|
|
|
|
offline
|
PHP interesse
|
Wel ja, uitbreiding, framework
Nu, als je echt niet met jQuery wil werken (ik zou niet weten waarom, maar laat ons stellen van wel), kan je door middel van een setInterval(functie(), 10); de tekst van z'n huidige kleur veranderen naar de kleur van de achtergrond. Dit met een kleine counter die dan een kleur uit een array haalt en dan als achtergrondkleur zet.
Dit is al heel ver gezocht, dus ik raad toch jQuery fadeIn() aan.
|
|
|
|
offline
|
HTML gevorderde
|
valles10 schreef: ik zou niet weten waarom, maar laat ons stellen van wel
Omdat je voor jQuery een groot file moet inladen en als je het voor maar 1 simpel fadeIn'tje gebruikt het alleen nutteloos en traag is.
|
|
|
|
offline
|
MySQL interesse
|
Ik heb het met een klein scriptje gedaan;
<script type="text/javascript">
setInterval(disap, 1);
function disap()
{
var een = document.getElementById('succes');
een.style.opacity = een.style.opacity - 0.001
}
</script>
<div id="succes" style="opacity: 1;">
Gelukt!
</div>
<script type="text/javascript"> setInterval(disap, 1); function disap() { var een = document.getElementById('succes'); een.style.opacity = een.style.opacity - 0.001 } </script> <div id="succes" style="opacity: 1;"> Gelukt! </div>
|
Aar – 29/10/2010 14:35
|
|
offline
|
PHP interesse
|
Waldio schreef: [..quote..]
Omdat je voor jQuery een groot file moet inladen en als je het voor maar 1 simpel fadeIn'tje gebruikt het alleen nutteloos en traag is.
..die vervolgens gecached word.
|
|
|
|
offline
|
PHP interesse
|
Chilion schreef: Ik heb het met een klein scriptje gedaan;
[..code..]
kan, maar werkt niet overal, test maar uit;)
|
Dit onderwerp is gesloten.
|
|
|