triggerHandler методу
triggerHandler методу элементке байланышкан
бардык окуя иштеткичтерин иштетүүгө мүмкүндүк берет. Ал
trigger
методуна окшош иштейт, бирок алардын ортосунда айырмачылыктар бар:
Окуя иштеткичи иштейт, бирок стандарттуу
окуя чакырылбайт. Мисалы,
triggerHandler('submit'),
иштегенде, submit окуясын чакырбайт.
triggerHandler методу
топтогу биринчи элементке гана таасир этет.
triggerHandler тарабынан ишке киргизилген окуялар
DOM элементтеринин иерархиясында көзгө көрүнбөйт.
triggerHandler jQuery объектин кайтарбайт,
ал акыркы чакырылган иштеткичтен алынган маанини кайтарат. Эгерде эч кандай иштеткич иштебесе, анда undefined кайтарылат.
Синтаксис
Биринчи параметр катары биз окуянын түрүн сап түрүндө бере алабыз, экинчиси милдеттүү эмес массив же кошумча параметрлерди иштеткичке өткөрүү үчүн камтыган объект болушу мүмкүн:
$(селектор).triggerHandler(окуянын түрү, [кошумча параметрлер]);
Биринчи параметр катары окуяны
jQuery.Event объектиси түрүндө өткөрсө болот:
$(селектор).trigger(окуя, [кошумча параметрлер]);
Мисал
Келгиле, #test1 белгиси бар баскычты басканда
биздин input фокусту алышы жана
консольго 'Focused' чыгарылышы үчүн кылалы,
башкача айтканда - иштеткич функция да, фокустун окуясы да иштейт. Экинчи баскычты
#test2 басканда иштеткич функция гана иштейт,
бирок input фокусту албайт:
<button id="test1">button1</button>
<button id="test2">button2</button>
<input type="text">
$('#test1').click(function() {
$('input').trigger('focus');
});
$('#test2').click(function() {
$('input').triggerHandler('focus');
});
$('input').focus(function() {
console.log('Focused')
});