프로그래밍/Front end

[Front end] contenteditable change event scroll controll

Reference M1 2020. 8. 8. 00:39

 

let previousLineNum = 0;
$(document).on('blur keyup paste input click', '[contenteditable]', function(e) {
	
	const selection = window.getSelection();
	
	if (null != selection.anchorNode) {
		
		const range = selection.getRangeAt(0);
		const lineNum = range.startOffset;
        
	    if (13 === e.keyCode && previousLineNum < lineNum) {
        
        	const scrollHeight = $(this).get(0).scrollHeight;
	    	$(this).scrollTop(scrollHeight);
	    	previousLineNum = lineNum;
	    }
	}
});