복붙노트

[JQUERY] Div에서 선택한 텍스트의 HTML을 가져옵니다

JQUERY

Div에서 선택한 텍스트의 HTML을 가져옵니다

해결법


  1. 1.텍스트를 선택하고 MyText라는 변수에 저장하십시오.

    텍스트를 선택하고 MyText라는 변수에 저장하십시오.

    if (!window.x) {
        x = {};
    }
    x.Selector = {};
    x.Selector.getSelected = function() {
        var t = '';
        if (window.getSelection) {
            t = window.getSelection();
        } else if (document.getSelection) {
            t = document.getSelection();
        } else if (document.selection) {
            t = document.selection.createRange().text;
        }
        return t;
    }
    
    $(function() {
        $(document).bind("mouseup", function() {
            var mytext = x.Selector.getSelected();
            alert(mytext);
        });
    });
    

  2. 2.선택한 HTML을 문자열로 가져 오려면 다음 함수를 사용할 수 있습니다.

    선택한 HTML을 문자열로 가져 오려면 다음 함수를 사용할 수 있습니다.

    function getSelectionHtml() {
        var html = "";
        if (typeof window.getSelection != "undefined") {
            var sel = window.getSelection();
            if (sel.rangeCount) {
                var container = document.createElement("div");
                for (var i = 0, len = sel.rangeCount; i < len; ++i) {
                    container.appendChild(sel.getRangeAt(i).cloneContents());
                }
                html = container.innerHTML;
            }
        } else if (typeof document.selection != "undefined") {
            if (document.selection.type == "Text") {
                html = document.selection.createRange().htmlText;
            }
        }
        return html;
    }
    

  3. 3.

    window.getSelection().getRangeAt(0);
    

    문서 조각을 반환합니다. 선택이 시작되고 끝나는 노드와 다른 수분이 많은 것들을 포함합니다. Firebug 또는 다른 JavaScript 콘솔로 검사하고 && || 더 많은 정보를 위해서


  4. 4.DIV의 텍스트를 얻으려면 다음을 수행하십시오. (jQuery)

    DIV의 텍스트를 얻으려면 다음을 수행하십시오. (jQuery)

    var text = $('div.selector').text();
    
  5. from https://stackoverflow.com/questions/5669448/get-selected-texts-html-in-div by cc-by-sa and MIT license