반응형
jquery가없는 jquery의 'trigger'메소드와 동등한 것은 무엇입니까?
jQuery가trigger
없는 jQuery 의 방법에 해당하는 것은 무엇 입니까?
예를 들어, jQuery$('.blah').trigger('click');
없이 어떻게해야 합니까?
"매우 조잡한 등가물"의 일부 값 :
var button = document.getElementById("thebutton")
button.click()
모든 브라우저 (예 : Firefox!)가 이러한 방식으로 시뮬레이션 된 이벤트를 허용하는 것은 아닙니다! 사용 onclick()
이벤트가 인라인 등의 경우에만 것은 작동
jQuery 소스를 보고 "trigger :"(첫 번째 일치)를 검색하여 "작동하도록 만들기"를 위해 수행 된 모든 icky 작업을 확인하십시오 (그 중 좋은 부분은 jQuery 내부를 둘러싼 것 뿐이며 다른 프레임 워크에는 훨씬 더 간단한 예제가 있습니다.) ).
즐거운 코딩입니다.
event.initMouseEvent ( "클릭"...
다음은 그 예입니다.
function simulateClick(elId) {
var evt;
var el = document.getElementById(elId);
if (document.createEvent) {
evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
}
(evt) ? el.dispatchEvent(evt) : (el.click && el.click());
}
var foo = document.getElementById("hey");
foo.onclick = function () {alert("bar");}
simulateClick("hey");
자바 스크립트
var event = document.createEvent("Event");
event.initEvent("click", false, true);
document.getElementById("blah").dispatchEvent(event);
아래와 같이 jQuery 트리거와 동일합니다.
$('#blah').trigger('click');
여기 제 예가 있습니다. 모든 상황에서 완벽하게 작동
var d=document.createEvent("MouseEvents"),
c=document.createEvent("MouseEvents"),
p=document.createEvent("MouseEvents");
d.initMouseEvent("mousedown",true,true,window,0,0,0,0,0,false,false,false,false,0,null);
c.initMouseEvent("click" ,true,true,window,0,0,0,0,0,false,false,false,false,0,null);
p.initMouseEvent("mouseup" ,true,true,window,0,0,0,0,0,false,false,false,false,0,null);
var element =// some selector;
element.dispatchEvent(d);
element.dispatchEvent(c);
element.dispatchEvent(p);
반응형
'programing' 카테고리의 다른 글
JavaFX 2.1 : 툴킷이 초기화되지 않았습니다. (0) | 2021.01.15 |
---|---|
두 C # 개체 간의 속성 차이 찾기 (0) | 2021.01.15 |
Python 사전 : TypeError : 해시 할 수없는 유형 : 'list' (0) | 2021.01.15 |
조각 만들기 : 생성자 대 newInstance () (0) | 2021.01.15 |
DateTime.ParseExact (String, String, IFormatProvider)에 IFormatProvider가 필요한 이유는 무엇입니까? (0) | 2021.01.15 |