Autor | Zpráva | ||
---|---|---|---|
user243 Profil |
hoj,
původně jsem měl kód: <input type="password" value="heslo" name="heslo" id="heslo" class="white_border" onfocus="this.value=''" onblur="if(this.value=='')this.value='heslo'" style="margin-right:8px;"> <script> document.getElementById("heslo").focus(); </script> proto jsem si vytvořil následující funkci: function form_eventy() { var heslo = document.getElementById('heslo'); var nick = document.getElementById('nick2'); var email = document.getElementById('email'); var www = document.getElementById('www'); var komentar = document.getElementById('komentar'); var tag_b = document.getElementById('tag_b'); var tag_i = document.getElementById('tag_i'); var tag_u = document.getElementById('tag_u'); // můžu do jedné události zapsat i více funkcí, ale je to jen na bublání, viz záložky /*heslo.addEventListener('focus', function(){ if(heslo.value=='heslo') heslo.value=''; }, false);*/ if (heslo) { heslo.focus(); heslo.onfocus = function() { if(this.value=='heslo') this.value=''; }; heslo.onblur = function() { if(this.value=='')this.value='heslo'; }; }; if (nick) { nick.onfocus = function() { if(this.value=='Nick') this.value=''; }; nick.onblur = function() { if(this.value=='')this.value='Nick'; }; }; if (email) { email.onfocus = function() { if(this.value=='E-mail') this.value=''; }; email.onblur = function() { if(this.value=='')this.value='E-mail'; }; www.onfocus = function() { if(this.value=='Www') this.value=''; }; www.onblur = function() { if(this.value=='')this.value='Www'; }; }; if (komentar) { komentar.onfocus = function() { if(this.value=='Text.') this.value=''; }; komentar.onblur = function() { if(this.value=='')this.value='Text.'; }; }; if (tag_b) { tag_b.onmouseover = function() { helpline('b'); }; tag_b.onclick = function() { formatuj('b','komentar'); }; tag_i.onmouseover = function() { helpline('i'); }; tag_i.onclick = function() { formatuj('i','komentar'); }; tag_u.onmouseover = function() { helpline('u'); }; tag_u.onclick = function() { formatuj('u','komentar'); }; }; } jestli je to zbytečnost, tak se omlouvám, pokud najdete ve funkci nějakou botu, tak mi ji prosím taky nahlašte; živá ukázka předem díky za odpovědi |
||
Keeehi Profil |
heslo.focus(); heslo.onfocus = function() { if(this.value=='heslo') this.value=''; }; |
||
Chamurappi Profil |
#3 · Zasláno: 28. 6. 2012, 12:27:04
Reaguji na usera243:
Proč testuješ u každého z <input> ů konkrétní hodnotu? Výchozí value je v defaultValue . Všechny onfocus y i onblur y můžeš nastavit najednou jedním cyklem.
|
||
user243 Profil |
#4 · Zasláno: 28. 6. 2012, 20:45:31
díky Keeehi, problém byl tam;
když jsem to smolil, tak jsem neuměl správně pracovat s defaultValue (nevím proč, ale vzpomínám si, že jsem to testoval jen na defaultValue a ne na this.defaultValue ), a proto jsem měl u všeho konkrétní hodnotu; díky Chamurappi za tip;
výsledná funkce: function form_eventy() { var heslo = document.getElementById('heslo'); var nick = document.getElementById('nick2'); var email = document.getElementById('email'); var www = document.getElementById('www'); var komentar = document.getElementById('komentar'); var tag_b = document.getElementById('tag_b'); var tag_i = document.getElementById('tag_i'); var tag_u = document.getElementById('tag_u'); // můžu do jedné události zapsat i více funkcí, ale je to jen na bublání, viz záložky if (heslo) { heslo.onfocus = function() { if(this.value==this.defaultValue) this.value=''; }; heslo.focus(); heslo.onblur = function() { if(this.value=='')this.value=this.defaultValue; }; }; if (nick) { nick.onfocus = function() { if(this.value==this.defaultValue) this.value=''; }; nick.onblur = function() { if(this.value=='')this.value=this.defaultValue; }; }; if (email) { email.onfocus = function() { if(this.value==this.defaultValue) this.value=''; }; email.onblur = function() { if(this.value=='')this.value=this.defaultValue; }; www.onfocus = function() { if(this.value==this.defaultValue) this.value=''; }; www.onblur = function() { if(this.value=='')this.value=this.defaultValue; }; }; if (komentar) { komentar.onfocus = function() { if(this.value==this.defaultValue) this.value=''; }; komentar.onblur = function() { if(this.value=='')this.value=this.defaultValue; }; tag_b.onmouseover = function() { helpline('b'); }; tag_b.onclick = function() { formatuj('b','komentar'); }; tag_i.onmouseover = function() { helpline('i'); }; tag_i.onclick = function() { formatuj('i','komentar'); }; tag_u.onmouseover = function() { helpline('u'); }; tag_u.onclick = function() { formatuj('u','komentar'); }; }; } |
||
Chamurappi Profil |
#5 · Zasláno: 28. 6. 2012, 21:35:09
Reaguji na usera243:
Pole a cykly neumíš? Děláš tam pětkrát totéž… |
||
user243 Profil |
#6 · Zasláno: 29. 6. 2012, 09:22:42
do teď jsem myslel, že celkem ano, ale nenapadá mě, jak to na tohle použít; kdyby jsi mě mohl trochu popostrčit...
|
||
user243 Profil |
#7 · Zasláno: 30. 6. 2012, 12:46:17
měl jsi na mysli něco takového?
var heslo = document.getElementById('heslo'); var nick = document.getElementById('nick2'); var email = document.getElementById('email'); var www = document.getElementById('www'); var komentar = document.getElementById('komentar'); var tag_b = document.getElementById('tag_b'); var tag_i = document.getElementById('tag_i'); var tag_u = document.getElementById('tag_u'); // můžu do jedné události zapsat i více funkcí, ale je to jen na bublání, viz záložky var polozka = new Array(heslo, nick, email, komentar); for (var i=0; i < polozka.length; i++) { if (polozka[i]) { polozka[i].onfocus = function() { if(this.value==this.defaultValue) this.value=''; }; polozka[i].onblur = function() { if(this.value=='')this.value=this.defaultValue; }; }; if (polozka[i] == heslo) heslo.focus(); else if (polozka[i] == komentar) { tag_b.onmouseover = function() { helpline('b'); }; tag_b.onclick = function() { formatuj('b','komentar'); }; tag_i.onmouseover = function() { helpline('i'); }; tag_i.onclick = function() { formatuj('i','komentar'); }; tag_u.onmouseover = function() { helpline('u'); }; tag_u.onclick = function() { formatuj('u','komentar'); }; }; }; |
||
Časová prodleva: 12 let
|
0