如果未列出用户名。删除元素

时间:2012-11-26 01:54:04

标签: jquery contains

我正在尝试制作一个简单的代码。我不是很擅长jQuery,我很抱歉。需要帮助这个代码大声笑。好的,我要做的是制作一个包含变量的代码,而这些代码又是Usersnames,这是我到目前为止所拥有的

$(document).ready(function() { 
    var $NLG = $('ul li a.mainmenu'); 
 $NLG.filter(':contains("USERNAME")function(){
     .find('.nlgchat');
         //do nothing');
    else
   .remove('.nlgchat');
    });

是的,我知道这可能是完全错误的,我完全迷失了。但基本上我想在这里完成的是:如果列出的用户名包含变量不做任何事情,否则如果不完全删除元素。有人可以帮我理解这个,以及如何做这个代码?

2 个答案:

答案 0 :(得分:2)

我相信这就是你要找的东西:

$(document).ready(function() { 
    if ( ! $('ul li a.mainmenu:contains("USERNAME")').length ) {
        $('.nlgchat').remove();
    }
});

虽然我确信你可以优化那个选择器。

答案 1 :(得分:2)

如果我理解正确:

  • 默认隐藏聊天
  • 如果匹配发现=显示聊天

jsBin demo

$(document).ready(function() {

  $('.nlgchat').hide(); // or do it rather with CSS...

  var usernames = ['roko','roky','roxon']; // remove 'roko' and no match will be found
  var nameslist = []; // to match against server usernames

  $('ul li a.mainmenu').each(function(){ 
    var name = $(this).text().toLowerCase();
    nameslist.push(name); // dana,roko,john
  });

  $.each(usernames, function(i,v){
     if( nameslist.indexOf( v ) > -1 ){
        $('.nlgchat').show(); 
        return false;
     }else{
        $('.nlgchat').hide();
     }
  });

 });