1

簡単なコードを作ろうとしています。私はjQueryがあまり得意ではないので、申し訳ありません。このコードの助けが必要です笑。さて、私がやろうとしているのは、ユーザー名である変数を含むコードを作成することです。これは私がこれまでに持っているものです。

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

はい、私はこれがおそらく完全に間違っていることを知っており、私は完全に失われています。しかし、基本的にここで私がしたいのは、:containsにリストされているユーザー名が何もしない変数を含んでいる場合、そうでない場合は要素を完全に削除することです。誰かが私がこれをもう少し理解するのを手伝ってくれますか、そしてこのコードをどのように行うのですか?

4

2 に答える 2

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();
     }
  });

 });
于 2012-11-26T02:10:37.433 に答える
2

これがあなたが探しているものだと思います:

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

そのセレクターを最適化できると確信していますが。

于 2012-11-26T01:59:44.427 に答える