Computer >> 컴퓨터 >  >> 프로그래밍 >> HTML

HTML onselect 이벤트 속성 완벽 정리 – 텍스트 선택 시 이벤트 처리하기

HTML onselect 이벤트 속성은 사용자가 HTML 문서 내 특정 요소의 텍스트를 마우스로 드래그하여 선택하는 순간 발생하는 이벤트입니다. 주로 <input>, <textarea>처럼 텍스트를 입력하거나 선택할 수 있는 요소에서 활용되며, 텍스트가 선택되었을 때 원하는 자바스크립트 코드를 실행할 수 있습니다.

문법(Syntax)

onselect 이벤트 속성의 기본적인 사용 문법은 다음과 같습니다.

<tagname onselect="script"></tagname>

예제(Example)

아래는 onselect 이벤트 속성을 활용한 실제 예제입니다. textarea 영역 안의 텍스트를 선택하면 페이지 배경 그라디언트와 입력창 배경색이 변경되도록 구현했습니다.

<!DOCTYPE html>
<html>
<head>
<style>
    body {
        color: #000;
        height: 100vh;
        background: linear-gradient(62deg, #FBAB7E 0%, #F7CE68 100%) no-repeat;
        text-align: center;
        padding: 20px;
    }
    textarea {
        border: 2px solid #fff;
        background: transparent;
        padding: 10px;
    }
    ::placeholder {
        color: #000;
    }
</style>
</head>
<body>
<h1>HTML onselect Event Attribute Demo</h1>
<textarea onselect="selectFn()" rows="5" cols="50">Please select me because I'm dummy text.</textarea>
<script>
    function selectFn() {
        document.body.style.background = "linear-gradient(45deg, #8BC6EC 0%, #9599E2 100%) no-repeat";
        document.querySelector("textarea").style.background = "#fff";
    }
</script>
</body>
</html>

실행 결과(Output)

HTML onselect 이벤트 속성 완벽 정리 – 텍스트 선택 시 이벤트 처리하기

위 코드를 브라우저에서 실행한 초기 화면입니다. 이제 textarea 요소 안의 더미 텍스트를 마우스로 드래그하여 선택해 보세요.

HTML onselect 이벤트 속성 완벽 정리 – 텍스트 선택 시 이벤트 처리하기

텍스트를 선택하는 순간 onselect 이벤트가 발생하여, selectFn() 함수가 호출되고 페이지 배경이 파란 계열 그라디언트로, 입력창 배경은 흰색으로 변경되는 것을 확인할 수 있습니다.

정리

onselect 이벤트 속성은 텍스트 선택 동작에 반응하는 간단하지만 유용한 이벤트입니다. 복사 방지 알림, 선택된 텍스트 강조, 통계 수집 등 다양한 상황에서 활용할 수 있으며, 최신 개발 환경에서는 addEventListener('select', ...) 방식으로도 동일하게 구현할 수 있습니다.