如何使用jQuery隐藏仅包含空格的HTML元素?

Ban*_*hee 6 html javascript jquery

我有以下HTML:

<div id="rightCon">




                    </div>
Run Code Online (Sandbox Code Playgroud)

然后我在顶部有以下脚本:

$('#rightCon:empty').hide();
Run Code Online (Sandbox Code Playgroud)

div为什么不隐藏?我可以看到有一些空间(我无法摆脱),但这真的很重要吗?如果只有空格,它如何删除/隐藏此div?

Poi*_*nty 6

您的元素似乎有一堆空白区域,这将为其提供一个文本节点.:empty由于这个原因,它不会匹配.

您可以尝试查找元素并明确检查其内容:

$('#rightCon').filter(function() {
  var text = $(this).text().replace(/\s*/g, '');
  return !text;
}).hide();
Run Code Online (Sandbox Code Playgroud)


Ban*_*hee 4

这解决了问题。

$(document).ready(function () {
                if($('#rightCon').text().trim().length < 1)
                {$('#rightCon').hide();}
            });
Run Code Online (Sandbox Code Playgroud)