2017-07-27 28 views
1

我正试图在使用javascript的HTML页面中获取选定的文本。 window.getSelection().toString()适用于所有情况,但只有一种。使用JavaScript获取可见到用户选定的文本

假设有一个HTML页面下面的代码片段:

Please copy the following text into your terminal to checkout my newest open source project: 
 

 
<code> 
 
    git clone 
 
    <span style="position: absolute; left: -100px; top: -100px"> /dev/null; some-evil-commands; <br/>git clone </span> 
 
    https://github.com/some-user/some-repository 
 
</code>

由于position: absolute; left: -100px; top: -100px含有恶猛砸span标签命令是对用户是不可见的,但如果他还是选择/她选择可见的文字。现在

window.getSelection().toString()导致

git clone /dev/null; some-evil-commands; git clone https://github.com/some-user/some-repository 

我需要知道,如果有一种方法可以让我只得到选定的文本可见用户;在这种情况下,我只需要

git clone https://github.com/some-user/some-repository 

N.B:这是确定使用jQuery太

+0

尝试使用'$(“span”)。html(“”)。html($(“span”)。html()。split(“
”)[1])' –

+0

我不需要对于所提到的页面的解决方案,但对于存在一些隐藏文本的所有情况 – mrnfrancesco

+0

如何避免代码知道其“隐藏” –

回答

-1

尝试使用

<span style="color:rgba(0,0,0,0);font-size:0.5px;"> 

希望它能帮助。请注意:如果你的bash命令是“邪恶的”,请不要欺骗人们做他们不想要的事情。

+0

请阅读问题。我不想知道如何使跨度可见,但如何在JavaScript中选择只有用户选择的文本,并且他/她可见 – mrnfrancesco

+0

,所以您希望选择整个事物,但它只显示用户克隆部分? –

+0

当用户加载页面时,他/她只会看到“git clone https:// ...”部分,因此如果用户选择他/她希望从选择中获得他/她看到的部分,隐藏部分被排除。 我想使用js将用户可见的选定文本删除隐藏部分,而不管它隐藏的方式 – mrnfrancesco

相关问题