현 크롬 stable 75.0.3770.80 버전은 한글이 마지막 글자일 경우, 마우스를 클릭하면 마지막 글자가 사라지는 버그가 있습니다.
(카나리아에선 버그 없는 것 같더라구요.)
여튼-_-;
뭐 올릴 때마다, 버튼 누르는 순간에 자꾸 글씨 짤리는 게 짜증나서, 호다닥 만들었습니다. =ㅅ=;
이게 커서를 날린 후, 새로 설정하면, 작성중이던 마지막 글자가 저장이 되더라구요.
그래서 이걸 이용해봤습니다. 근본적인 버그 해결은 아니고, 야매예요. ㅋㅋ
에디터 영역에서 글씨를 작성하다가 버튼(예를 들면 [쓰기] 버튼)을 누르기 위해, 마우스를 움직이면,
에디터에 있던 키보드 커서를 재설정해서 마지막 글자가 없어지지 않도록 하는 스크립트입니다.
(단 한글 작성이 완료가 안되었다면, 글자를 완성시키면서 커서가 우측으로 1칸 이동합니다.)
https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo
크롬 스토어에서 Tampermonkey를 설치하시고, [새 스크립트 만들기]를 누른 후, 아래 내용을 복붙하세요.
Ctrl+C , Ctrl+V 로 복붙 후, Ctrl+S로 저장까지!
(Tampermonkey 아이콘 누르면 나오는 메뉴에서, 아래 버튼 클릭)
// ==UserScript== // @name 크롬 75 텍스트박스 마지막 글자 사라지는 버그 수정 // @namespace http://tampermonkey.net/ // @version 0.4 // @description try to take over the world! // @author Myayu // @include *://* // @grant none // ==/UserScript== (function() { 'use strict'; let target; let cursor; const sel = document.getSelection(); document.addEventListener("keyup", function(e){ target = (e.target.isContentEditable || e.target.nodeName === "TEXTAREA" || (e.target.nodeName === 'INPUT' && (e.target.type === "text" || e.target.type === "search" || e.target.type === "email" || e.target.type === "url")) ) ? e.target : null; cursor = (target && typeof target.value === "undefined") ? [ sel.focusNode, sel.focusOffset ] : null; }); document.addEventListener("mousemove", function(){ if(target){ target.blur(); target.focus(); cursor && sel.collapse(cursor[0], cursor[1]); target = null; } }); })();
◆ v 0.2 수정:
일반적으로 장문의 글을 작성하기 위해 사용하는 div텍스트박스의 경우, 커서 위치를 바꾸기 위해 에디터 영역 안에서 마우스를 움직이는 경우도 있기 때문에, div텍스트박스는 작성중인 글자가 있다면, 에디터 안에서 마우스를 움직여도 커서를 날려서 글자를 저장하도록 변경했습니다.
◆ v 0.3 수정:
input에서 tab키로 나간 후, 마우스 움직이면 커서가 input으로 되돌아가는 버그 수정
v0.2 수정을 input 박스에도 적용. -> 이제 에디터 영역 안쪽/바깥쪽 상관 없이 마우스 움직이기만 하면 그냥 커서가 날아가거나 재설정됩니다.
◆ v 0.4 수정:
이제 div텍스트박스에서도 커서가 날아가지 않습니다.
마지막 글자 짤리는 버그는 크롬 75.0.3770.90에서 수정되었습니다.
다음 버전 크롬에서 새로 생긴 [마우스로 커서 이동 후에도 제대로 안 움직이는 버그]는 아래 스크립트로 해결하세요.
일반적으로 장문의 글을 작성하기 위해 사용하는 div텍스트박스의 경우, 커서 위치를 바꾸기 위해 에디터 영역 안에서 마우스를 움직이는 경우도 있기 때문에, div텍스트박스는 작성중인 글자가 있다면, 에디터 안에서 마우스를 움직여도 커서를 날려서 글자를 저장하도록 변경했습니다.
...는 방금 이 글 편집하다가, 커서 바꾸려고 클릭하니 글자 날아가는거 보고 ㅃ쳐서 급하게 수정했어요. -_-;
Chrome Canary 77.0.3815.0
피드백 되서 카나리 버전에는 반영 됐나보네요..
stable은 보통 버그 최소화하고 싶어서 쓰는 건데, 이미 공개된 버그픽스는 적용해줬어야 하는거 아닌지...ㅂㄷㅂㄷ
얼마전에 크롬 탭 검색 버그도 이랬던거 같은데.....
이번 버그는 이미 stable최종 배포 전에 카나리아는 버그 수정이 끝나버려서... 상황이 좀 웃긴 것 같아요. ( -_-)a
input에서 tab키로 나간 후, 마우스 움직이면 커서가 input으로 되돌아가는 버그 수정
v0.2 수정을 input 박스에도 적용. -> 이제 에디터 영역 안쪽/바깥쪽 상관 없이 마우스 움직이기만 하면 그냥 커서가 날아가거나 재설정됩니다.
이제 div텍스트박스에서도 커서가 날아가지 않습니다.
아오 또 이러네
말씀하신 확장자 설치해서 새 스크립트 만들기 누르면
기존 내용은 다 지우고 복붙 하면 되나요??
저같은 경우는 마지막 글자뒤에 스페이스키를 치거나 마침표 등을 쳐서 해결하고 있습니다 ㅡ,.ㅡ
다른 시스템은 잘 모르겠네요. -_-a
하지만 방법이 아예 없는건 아니라서.. 또다른 방법이 있죠!
이미 버그가 수정된 크롬 카나리아 버전을 사용해서 해결하시는 방법이 있습니다.
오늘 stable까지 버그픽스 적용되었네요. 버전 75.0.3770.90(공식 빌드) (64비트)
이 스크립트는 이제 지우시면 됩니다.
대신 새로 생긴 버그(-_-) 수정하는 스크립트를 사용하세요
https://www.clien.net/service/board/lecture/13606638CLIEN