jQuery - 在特定文本后隐藏元素

时间:2013-05-14 12:37:59

标签: javascript jquery

我想在特定文本/第一个div的最后一个单词后隐藏一些元素

<div class="top">here is some text</div>
<table class="middle">
...
</table>
<div class="bottom">...</div>

隐藏表格(中间)和div(底部),具体取决于第一个div中的“text”一词

6 个答案:

答案 0 :(得分:1)

您可以使用$('.top').text().split(' ').pop()获取最后一个单词,然后向show/hide其他元素添加一些简单的逻辑:

var lastWord = $('.top').text().split(' ').pop();
$('.middle, .bottom').toggle(lastWord == 'text');

答案 1 :(得分:1)

http://jsfiddle.net/EnQym/1/

txtWord = $('.top').text().split('text')[1]
if(txtWord){
alert("div show");
}else{

alert("div hide");
}

答案 2 :(得分:0)

示例如果在.top div文本中隐藏或显示该函数必须是:

var txt = $('.top').text();

if(txt=='hide')
{
   $('.middle').hide();
   $('.bottom').hide();
}
else if(txt=='show')
{
   $('.middle').show();
   $('.bottom').show();
}

答案 3 :(得分:0)

如果您需要检查第一个div的文本并显示相对div



    if($(".top").html() == "what you want")
    {
        $(".middle").show();
        $(".bottom").hide();
    }
    else
    {
        $(".bottom").show();
        $(".middle").hide();
    }

答案 4 :(得分:0)

var lastWord = function (o) {
    return ("" + o).replace(/[\s-]+$/, '').split(/[\s-]/).pop();
};

if (lastWord($('.top').html()) === "mykeyword") {
    $('.middle,.bottom').hide();
} else $('.middle,.bottom').show();

答案 5 :(得分:0)

让你有一个你调用的方法

hideOrShow(){
if(document.getElementsByClassName('top')[0].innerHtml=="the text you want"){
document.getElementsByClassName('middle')[0].style.display='none';
document.getElementsByClassName('bottom')[0].style.display='none';
}else{
document.getElementsByClassName('middle')[0].style.display='block';
document.getElementsByClassName('bottom')[0].style.display='block';
}
}