1

抱歉,这可能是一个奇怪的问题:

我有一个现有的 HTML 代码,我不能直接编辑或删除它的一部分。问题是:在这段代码的一个 div 元素中,有一些我想隐藏的文本。这个 div 内部还有另一个元素,我不想隐藏。它看起来像这样:

<div>
....Text I want to hide....
<table> ... Text I don't want to hide...</table>
</div>

我的问题:是否可以隐藏“....我想隐藏的文本......”而不隐藏“......我不想隐藏的文本......”?(例如使用 javascript?)

4

3 回答 3

3
var txt = div.childNodes[0];
var range = document.createRange();
range.selectNode(txt);
var span = document.createElement("span")
range.surroundContents(span);
span.style.display = "none";

在这里看到它:http: //jsfiddle.net/KZVDf/

于 2012-11-21T22:49:59.023 回答
0

如果要删除文本,可以编写:

div.removeChild(div.firstChild);

(其中div是引用此<div>元素的变量)。

如果你想把它包装在一个<span>你可以随意隐藏和取消隐藏的地方,你可以写:

var span = document.createElement('span');
div.insertBefore(span, div.firstChild);
span.appendChild(div.firstChild);

(哪里div和以前一样)。

于 2012-11-21T22:54:43.487 回答
0

环绕您要隐藏的文本span并设置为span display:none. 例子:

<div>
<span style="display:none">....Text I want to hide....</span>
<table> ... Text I don't want to hide...</table>
</div>

或者用脚本隐藏:

$('div span').show(); // Show hidden text in span
$('div span').hide(); // Hide text in span
于 2012-11-21T22:56:53.643 回答