Blocare buton cu deblocare dupa anumit timp
Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
-
cadou
- Mesaje:328
Blocare buton cu deblocare dupa anumit timp
Mam gandit ca dupa ce trimit un comentariu acesta sa se blocheze timp de 3 secunde, cum fac ?
Stiu asa :
Ca asta e atributul de blocat, dar dupa 3 secunde sa se deblocheze ca sa se poata accesa din nou.
cadou
Mesaje:328
Cred ca nu ai inteles ce vroiam eu :p, ce miai dat nu e ce vreau eu.
Deci : apesi pe buton, se blocheaza, iar dupa 2 3 secunde sa se deblocheze si sa fie activ din nou, si tot asa.
steell
Mesaje:190
Eu cred ca tu nu ai inteles. Tiam dat acea acea functie si pagina aceea ca exemplu se vezi cum functioneaza functia. Tu trebuie sa te folosesti de functia aia pentru a face ce ai spus mai sus (crede-ma ca se poate). Doar nu credeai ca o sa iti postez scriptul gata facut.
Fi inventiv. Combina diverse functii, exerseaza cu ele, fa ce iti vine in minte pe moment, doar asa inveti.
Un mod foarte bun de a-ti exersa inventivitatea este sa faci scripturi ce rezolva diverse operatii matematice.
De exemplu, fa un script care sa iti calculeze combinari de n luate cate k, n si k introduse de la tastatura.
Trebuie sa faci cat mai multe scripturi, nu conteaza ce face acel script, ideea e sa-l faci sa mearga. Asa inveti.
MarPlo
Mesaje:4343
Poate e de folos acest script celor care dau de acest subiect, pt. invatare (ajuta comentariile din cod) si in scriptul care-l face.
Ca sa invatati, functiile pe care le gasiti si nu stiti ce fac, cautati pe net despre fiecare.
Cod: Selectaţi tot
<button id="btn">Clic</button>
<script type="text/javascript">
// functie ce va fi apelata cu setTimeout(), primeste id-ul elementului
function setElm(idelm) {
document.getElementById(idelm).removeAttribute('disabled'); // sterge atribut "disabled"
document.getElementById(idelm).innerHTML = 'Clic'; // schimba textul din elementul transmis
}
// la apasare element /buton cu id="btn"
document.getElementById('btn').onclick = function() {
this.setAttribute('disabled', 'disabled'); // adauga atribut "disabled" la butonul apasat
this.innerHTML = 'Dezactivat'; // schimba textul din butonul apasat
// setare executie functie setElm() dupa 2 secunde
setTimeout( "setElm('btn')", 2000 );
}
</script>
cadou
Mesaje:328
Buton de add comm :
Cod: Selectaţi tot
<input type="button" id="addcomm" value="Comenteaza" />
Uite ce am reusit sa scot din ce mi-ai dat :
Cod: Selectaţi tot
function setElm(idelm) {
document.getElementById('#addcomm').removeAttribute('disabled'); // sterge atribut "disabled"
document.getElementById('#addcomm').innerHTML = 'Asteapta 2 secunde'; // schimba textul din elementul transmis
}
$('#addcomm').attr('disabled','disabled');
setTimeout( "setElm('#addcomm')", 2000 );
Dar nu merge.
MarPlo
Mesaje:4343
Nu merge fiindca nu ai inregistrat eveniment "onclick" la button.
Ai si schimbat cu un cod jQuery.
Foloseste script-ul dat asa cum e, vezi mai atent comentariile din el, sau vezi si exemplu de la pagina
https://marplo.net/javascript/dezact ... pa-timp-js