| 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 onfocusy i onblury 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: 14 let
|
|||
0