ContentEditable


        var editor = absol._({
            child: absol.text.textToNodes('This is first line\nThis is second line\n\nThis is 4th line\n\n\n')
        }).attr('contenteditable', 'true').addStyle({
            height: '200px',
            width: '50%',
            border: 'solid 1px gray'
        }).addTo(document.body);

        absol._('<button>Start</button>').on('click', function () {
            editor.focus();
            absol.text.setSelectionRange(editor, 0, 0);
        }).addTo(document.body);
        absol._('<button>End</button>').on('click', function () {
            editor.focus();
            absol.text.setSelectionRange(editor, Infinity);
        }).addTo(document.body);
        absol._('<button>First line</button>').on('click', function () {
            editor.focus();
            absol.text.setSelectionRange(editor, 0, 18);
        }).addTo(document.body);
        absol._('<button>Second line</button>').on('click', function () {
            editor.focus();
            absol.text.setSelectionRange(editor, 19, 38);
        }).addTo(document.body);

    
This is first line
This is second line

This is 4th line