Cóż, to pytanie zostało zadane wcześniej, ale w kontekście jQuery. W jQuery możemy to sprawdzić przez propertyEvent property obiektu zdarzenia (link), który określa, czy jest to zdarzenie ręczne lub zaprogramowane .
W moim przypadku mam przy użyciuJavaScript Odsłuchiwanie zdarzeń i wyzwalaczy. Czy możemy rozróżnić między dwoma rodzajami zdarzeń(zaprogramowany i ręczny) w tym przypadku?
Jeśli nie to żadnych obejść?Javascript: Wykryj, czy zdarzenie jest wyzwalane przez użytkownika, a nie programowo
Moi słuchacze:
function setUpListeners(){
_cellViewWrapper.addEventListener('mousedown',mouseDownHandler,false);
_cellViewWrapper.addEventListener('mouseover',mouseEnter,false);
_cellViewWrapper.addEventListener('blur',blurHandler,true);
_cellViewWrapper.addEventListener('focus',focusEventHandler,true);
}`
wyzwalania przypadków użycia: 1.)
if(!IE_FLAG) hidePicker();
//if browser is internet explorer
else{
//if blur is allowed then hide Picker
if(_ieBlurAllowed) hidePicker();
//if blur is not allowed -- keep focus on picker input
//triggering the focus event here
else blurredElement.focus();/
}
2.) if((inputElem !== _focussedInput)) setTimeout(function(){ inputElem.focus(); },10);
i wiele innych ...
jQuery jest tylko javascript. Jeśli w jquery możesz to zrobić, możesz to zrobić w js. – rottenoats
hmmm .... jakikolwiek pomysł jak to zrobić w jQuery? –
Jaki kod jest programowo wyzwalający zdarzenie? – Scimonster