는 여기 가짜 간단한 방법 (그리고 이것이 SO 태그 무엇과 유사 모양) :
- 텍스트
<input>
를 만들고, 그 경계와 윤곽이 모두 없음으로 설정되어 있는지 확인 .
- 태그 (또는 버튼 등)의 컨테이너를 만들고
<input>
옆에 넣으십시오.
<input>
에있는 keydown
이벤트를 모니터링하십시오. 사용자가 "구분"문자 (예 : 세미콜론 또는 쉼표)를 입력하려고하면 버튼을 만들고 컨테이너에 추가하고 <input>
의 값을 비우고 기본값을 방지합니다 ("중단"문자 태그에 삽입되지 않았거나 <input>
에 남아 있음).
기본 아이디어입니다. 당신이 그 일을하면, 당신은 버튼에 이벤트 리스너/처리기를 추가하거나, 등 당신이 원하는 어떤 그 어떤,
Here's the simple example I cooked up 스타일을 할 수 있습니다
var inp = document.getElementById('yourInput'),
tags = document.getElementById('yourContainer'),
breaks = {
186: 1, // semi-colon
188: 1 // comma
};
function createTag(txt) {
var elem = document.createElement('span');
txt = document.createTextNode(txt);
elem.appendChild(txt);
elem.className = 'tag';
tags.appendChild(elem);
}
function monitorText(e) {
e = e || window.event;
e = e.keyCode;
if (breaks[e]) {
e = inp.value;
inp.value = '';
createTag(e);
return false;
}
}
inp.focus();
inp.onkeydown = monitorText;
감사합니다. 자동 선택 메뉴의 옵션 대신 모든 텍스트를 변환하도록 수정합니다. – zareef