2013-12-18 30 views
0

我想从选定的文本中获取所有文本到页面的结尾,这意味着我们在页面上看到的文本。但是当我尝试这一点,也得到标签“脚本”,“无脚本” ...等标签的文字,其不是网页上显示:如何从选定的文本中获取文本到页面末尾

function getTextFromCursor(){ 
    count=0; 
    var allText =""; 
    if(window.getSelection){ 
     var selection = window.getSelection(); 
     var selRange = selection.getRangeAt(0); 
     var range = document.createRange();  
     range.setStart(selRange.startContainer, selRange.startOffset); 
     var theBody = document.getElementsByTagName('body')[0]; 
     var lastEl = theBody.lastElementChild; 
     range.setEndAfter(lastEl);  
     allText = range.toString(); 
    } 
    return allText; 
} 

我怎么会只得到其中显示网页上的文字?

回答

0

我Rangy图书馆的TextRange module可以帮助。它允许您在用户在页面上看到它时处理文本,或多或少。有了它,你的例子可以实现与

0

range添加到selection,并使用selection.toString()代替。

selection.addRange(range); 
allText = selection.toString(); 
+0

这将导致浏览器之间的不一致的结果:这一页。 –

相关问题