JQUERY优化选择

JQUERY优化选择,jquery,Jquery,我想问一下编写JQUERY代码的最佳方法。 我有这样的DOM结构: <div id="chatCenterMembers"> <div id="adam" class="chatmember 100"> <div class="newchatmessage" style="display: block;"></div> </div> <div id="steven" class="chatmembe

我想问一下编写JQUERY代码的最佳方法。 我有这样的DOM结构:

 <div id="chatCenterMembers">
   <div id="adam" class="chatmember 100">
      <div class="newchatmessage" style="display: block;"></div>
   </div>
   <div id="steven" class="chatmember 101">
      <div class="newchatmessage"></div>
   </div>
 </div>

我想将userid的列表(例如:100101个类名)提取到数组中,其中类为“newchatmessage”的DIV的样式设置为display block(例如:它的visable)

我可以用$来完成每个循环,但是它看起来效率很低


有更好的办法吗?thx

您可以像这样收集所有需要的可见元素:

$(".chatmember .newchatmessage").filter(":visible").each(function() 
{
    //Extract here any information you want, i.e. 
    //this.className.match(/[0-9]+/) 
});
请尝试以下代码:

$('.newchatmessage').map(function(){
if ($(this).css('display') == 'block')
  return $(this).parent().attr('class').replace('chatmember ','');
}).get();

首先,将2个ID设置为“用户名”。如果您想多次使用此id,请改用class。username只是泛型。。。看起来像是活代码。。。是否有方法为具有newchatmessage和显示块集的用户提取useridXX?