Добавено на: 2010-05-06 21:45:45
Искам да ви покажа накратко как да пишете малки functions на prototype.
Важното е да разберете този израз document.getElementById. Това значи намери ми елемента по id. Примерно:
Идеята е да ви покажа как можете като кликнете върху линка да направите нещо с друг елемент.
В случая взимаме id=test и така селектираме целия div. След това казваме, че искаме да му дадем style=”display=none;”. Резултата е, че когато цъкнем върху линка div-а със съдържанието ще изчезне.
По този начин можете да направите много дори и да не знаете кои знае колко повече. Примерно:
document.getElementById('test’). className =’nov_class’; - Така подменяте класа на елемента и т.н.
Другото интересно е как да предаваме параметри на функциите. Ще вземем същия пример:
С този пример направихме така, че вие от вън да давате името на класа.
За малко по сложен пример ще ви дам това колкото да разберете по добре материята:
Както прави тази функция?
cmd ни подава дали сме добавили вече човека или не. В зависимост от това прави 2 неща. При клик на бутон-а сменя картинката и самата функция като и придава параметъра на другата възможност. След това прави заявка към (в случая ruby) страница която прави някакви действия.
Важното е да разберете този израз document.getElementById. Това значи намери ми елемента по id. Примерно:
test
Click
Идеята е да ви покажа как можете като кликнете върху линка да направите нещо с друг елемент.
function proba()
{
document.getElementById('test’).style.display = 'none';
}
В случая взимаме id=test и така селектираме целия div. След това казваме, че искаме да му дадем style=”display=none;”. Резултата е, че когато цъкнем върху линка div-а със съдържанието ще изчезне.
По този начин можете да направите много дори и да не знаете кои знае колко повече. Примерно:
document.getElementById('test’). className =’nov_class’; - Така подменяте класа на елемента и т.н.
Другото интересно е как да предаваме параметри на функциите. Ще вземем същия пример:
test
Click
function proba(what)
{
document.getElementById('test’). className = what;
}
С този пример направихме така, че вие от вън да давате името на класа.
За малко по сложен пример ще ви дам това колкото да разберете по добре материята:
function onFriends(cmdf, friend)
{
//add
if(cmdf == 1)
{
document.getElementById('dob_img').src = '../images/butonminus.gif';
document.getElementById('dob_link').href = 'javascript:onFriends(2, \''+friend+'\')';
new Ajax.Request('/person/friend_create/' + friend, {method:'post'});
}
//remove
else if(cmdf == 2)
{
document.getElementById('dob_img').src = '../images/butonplus.gif';
document.getElementById('dob_link').href = 'javascript:onFriends(1, \''+friend+'\')';
new Ajax.Request('/person/friend_destroy/' + friend,{method:'post'});
}
}
Както прави тази функция?
cmd ни подава дали сме добавили вече човека или не. В зависимост от това прави 2 неща. При клик на бутон-а сменя картинката и самата функция като и придава параметъра на другата възможност. След това прави заявка към (в случая ruby) страница която прави някакви действия.
