레이블이 Event인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Event인 게시물을 표시합니다. 모든 게시물 표시

2024년 1월 3일 수요일

javascript - input 태그 event

 

<input/> 이벤트 발생 순서

focus => keyDown => keyPress => input => keyUp => blur => change
( * keyDown 사용 권장)



<input/> 관련 이벤트들

focus : 요소가 포커스가 되고 커서가 발생하여 입력이 가능해졌을 때 발생하는 이벤트입니다. 이후 진행되는 인풋 관련 이벤트들이 발생하고 감지될 수 있는 시작점이 됩니다.

blur : 요소의 포커스가 해제되었을 때 발생하는 이벤트입니다.

change : focus가 발생하기 전의 원래 입력값과 비교하여 변화가 일어났을 경우 blur 이벤트 이후에 발생하는 이벤트입니다.

input : value 속성의 값이 바뀔 때마다 발생하는 이벤트입니다. 일반적으로 keyPress 직후에 value 속성이 바뀌면서 input 이벤트가 발생합니다. input 이벤트 객체의 data 프로퍼티는 value 속성에 가장 최근 추가된 한 글자를 가지고 있습니다.(영어의 경우 알파벳 한 글자, 한국어의 경우 초성/중성/종성으로 이루어진 한 글자)

keyDown : 키가 눌렸을 때 발생합니다. input 이벤트 전에 발생됩니다.

keyPress : 키가 눌렸을 때 발생하며, keyDown 이벤트 이후에 발생합니다. 한글 입력이나 기능키 입력시에는 발생하지 않습니다. MDN에서 찾아보면 deprecated 되었다고 나오니, input 이벤트 전에 입력을 제어하고 싶다면 keyDown 이벤트를 사용하는게 바람직해 보입니다.
keyDown과 여러모로 비슷한 특성을 가지지만 특정 키에는 발생하지 않는 등의 예기치 않은 동작으로 혼란을 줄 수 있는 이벤트가 아닐까 생각합니다.

keyUp : input 이벤트 발생 후 value가 업데이트 된 이후에 키보드에서 손을 떼면 발생하는 이벤트입니다. 당연하게도 키를 꾹 눌러서 입력을 반복하거나 할때는 발생하지 않습니다.


출처 : https://maxkim-j.github.io/posts/keyboard-input/



2021년 12월 7일 화요일

javascript - Event (keydown 강제 발생)

 

    function fn_KeyboardEvent() {

        //var element = document.getElementById('txtMainSearch');

        //element.dispatchEvent(new KeyboardEvent('keydown', {

        //    'key': 'a'

        //}));


        var event;

        var eventName = "keydown";

        var element = document.getElementById('txtMainSearch');

        if (document.createEvent) {

            event = document.createEvent('HTMLEvents');

            event.initEvent(eventName, true, true);

        } else if (document.createEventObject) {// IE < 9

            event = document.createEventObject();

            event.eventType = eventName;

        }

        event.eventName = eventName;


        if (element.dispatchEvent) {

            element.dispatchEvent(event);

        }

        else if (element.fireEvent && htmlEvents['on' + eventName]) {// IE < 9

            element.fireEvent('on' + event.eventType, event);

        }

        else if (element[eventName]) {

            element[eventName]();

        }

        else if (element['on' + eventName]) {

            element['on' + eventName]();

        }

    }


2017년 12월 22일 금요일

Unity - Scripting - C# - Delegate, Event



[Unity] Delegate 와 Event 설명 모음



Unity 터치이벤트 처리하기
http://www.bsidesoft.com/?p=164

C# delegate, action, event 활용 관련
http://hyunity3d.tistory.com/522

Unity event delegate 예제
http://hyunity3d.tistory.com/528

C# delegate과 event의 차이점
http://www.gpgstudy.com/forum/viewtopic.php?topic=18988

Delegate( 델리게이트 ) 는 어떨때 쓰나요?
http://devkorea.co.kr/bbs/board.php?bo_table=m03_qna&wr_id=36068

C# 강좌 19편. 델리게이트와 이벤트
http://blog.eairship.kr/151

Unity EventHandler를 이용해서 Event Driven Programming 하기
http://growingdever.tistory.com/215

C# 5장. 델리게이트 (Delegate) - 콜백, 체인
http://mrw0119.tistory.com/19

C# 7장. 이벤트 (Event)
http://mrw0119.tistory.com/21

C# event (이벤트) 를 알아보겠습니다.
http://aloloever.blogspot.kr/2015/01/c-event.html

Unity 탄막 슈팅 게임을 만들자(2), 이벤트(Event)와 Delegate 의 사용
http://linecode.tistory.com/12

Unity Event, UnityAction and Delegate
http://rapapa.net/?p=2936

대리자(delegate)
http://penji.tistory.com/160

C# 기초문법 델리게이트, 이벤트
http://blog.daum.net/_blog/BlogTypeView.do?blogid=0rMHK&articleno=104&categoryId=9&regdt=20151227150851

C# delegate 쉽게 이해하기
http://www.csharpstudy.com/CSharp/CSharp-delegate-concept.aspx

c# lambda expression
http://www.csharpstudy.com/CSharp/CSharp-lambda.aspx




MSSQL - Cursor vs Temp Table

#테이블 변수사용의 예 use pubs go declare @tmptable table (     nid int identity(1,1) not null,     title varchar (80) not null ) -- 테이블 변수 선언 inse...