在CSS3专栏中获取文字?

mat*_*ven 6 html javascript html-table css3

我正在使用CSS3对项目中列支持的支持(到目前为止,我发现它比大多数JavaScript解决方案更强大和可靠).

问题:是否可以以任何方式获取特定列中的文本?

mat*_*ven 7

而且......两个月之后呢?我终于找到了这个问题的答案.它依赖于document.caretRangeFromPoint(Webkit)或document.caretPositionFromPoint.

var getAllTextInColumn = function(rect){
    /*
        rect should be the size and x,y of the column
        { top, left, width, height }
    */

    if(document.caretRangeFromPoint){
        var caretRangeStart = document.caretRangeFromPoint(rect.left, rect.top);
        var caretRangeEnd = document.caretRangeFromPoint(rect.left+rect.width-1, rect.top+rect.height-1);
    } else {
        return null;
    }

    if(caretRangeStart == null || caretRangeEnd == null) return null;

    var range = document.createRange();
    range.setStart(caretRangeStart.startContainer, caretRangeStart.startOffset);
    range.setEnd(caretRangeEnd.endContainer, caretRangeEnd.endOffset);

    return range.toString();
};
Run Code Online (Sandbox Code Playgroud)