jQuery - 如果div2包含某个文本单词,则将CSS应用于div1?

时间:2011-09-25 14:28:59

标签: jquery

使用jQuery如何将css应用于div,如果另一个div包含某个单词?

因此,如果div1包含文本'TriggerWord',我希望div 2变为红色。以下是我的尝试。 感谢

     $("document").ready(function () {  
       if ($("#div1:contains('TriggerWord')")) {
          $('#div2').css('color','red');
       }
    });

4 个答案:

答案 0 :(得分:4)

不引用document。除此之外你的尝试是正确的。您需要:contains()选择器:

$(document).ready(function() {  
    if ($('#div1:contains("TriggerWord")').length > 0) {
        $('#div2').css('color', 'red');
    }
});

或用简写形式:

$(function() {  
    if ($('#div1:contains("TriggerWord")').length > 0) {
        $('#div2').css('color', 'red');
    }
});

这是一个live demo

答案 1 :(得分:1)

$(document).ready(function () {
    if ($("#div1").html().indexOf('TriggerWord') >= 0) {
        $('#div2').css('color', 'red');
    }
});

答案 2 :(得分:1)

正则表达式方法:

$(function() {

    var reg = /Trigger/g;

    if($('#div1').text().match(reg)) {
        $('#div2').css({color: 'red'});
    }

});

工作小提琴:http://jsfiddle.net/each/NJ966/

答案 3 :(得分:0)

$(function() {
    if (/triggerWord/.test($("div1").text()) {
        $("div2").css('color', 'red');
    }
});