1

你会认为这很容易——但我正在经历最艰难的时期。

这是我要确定的内容:

<span class="cw-value-one"></span>

这是我目前使用的:

    $('span.cw-value-one').each(function(){
        var textNode = $(this).text();
        var type = typeof textNode;
        var len = textNode.length;
        if($(this).is(':empty')){
            $(this).siblings('span.cw-value-two').css({"position": "relative", "left": "1em"});
        }
    });

好的,所以textNode = ""type = stringlen = 1- 这些都无助于识别空文本节点,因为a它的类型为字符串,长度为 1。jQuery.is(':empty')也不起作用。

那么,您如何识别 JQuery 或纯 Javascript 中的空文本节点?

4

2 回答 2

2

您可能在 span 中使用trim()空格来删除文本周围的 span 内的空格(如果有)。

现场演示

  var textNode = $(this).text().trim();
于 2012-09-01T03:41:44.803 回答
0

尝试检查文本的长度。

$('span.cw-value-one').each(function(){
        var textNode = $(this).text();
        var type = typeof textNode;
        var len = textNode.length;

        if(len <= 0){
            $(this).siblings('span.cw-value-two').css({"position": "relative", "left": "1em"});
        }
    });​

我还建议修剪文本。如果您想修剪文本,请务必查看此内容,即不喜欢修剪。JavaScript 中的 .trim() 在 IE 中不起作用

于 2012-09-01T04:09:54.657 回答