1

我需要使用标签类访问 div 类。将鼠标放在上面的逻辑<label class="name"> <div class="hidden">被调用。请注意<li><div>id 一直是 unqiue

HTML

     <li id="132" class="main" ><label class="name">Ajay</label>   
    <div class="hidden" id="132" >
       <p>Some Msg!!<p>
    </div>
    </li>

    <li id="192"  class="main"> <label class="name">Raj</label>    
    <div class="hidden" id="192" >
       <p>Some Msg!!<p>
    </div>
    </li>

    <li id="231"  class="main" ><label class="name">David</label>    
    <div class="hidden" id="231" >
       <p>Some Msg!!<p>
    </div>
    </li>

   So on...

jQuery

    $('.name').hovercard({detailsHTML:$('.hidden').html()}) 
// on placing mouse on label <div class="hidden"> is called

请帮帮我

4

2 回答 2

4

您的标记无效,并且您的描述与您的代码所说的您尝试执行的操作不匹配。我在这里猜测每种情况下的标记应该如下所示:

<li id="132" class="main"><label class="name">Ajay</label>
<div class="hidden" id="132" >
   <p>Some Msg!!<p>
</div>
</li>

如果是这样,并且如果您尝试调用hovercard元素label.name并包含来自div.hidden附近的信息,您会想要这样的东西:

 $(".name").each(function() {
    var $this = $(this);
    $this.hovercard({detailsHTML:$this.nextAll("div.hidden").html()});
 });

...因为 thediv和 thelabel不是父子关系,所以它们是兄弟姐妹。没有循环你不能这样做,因为我们需要导航。


另请注意,在 the和 theid上使用相同的值是无效的。值在页面上必须是唯一的。另请注意,以数字开头的值在 HTML5 中有效,但在 HTML4 及更早版本中无效,在 CSS中无效。当您使用 jQuery 时,这意味着您可能会使用大量 CSS 选择器来与您的结构进行交互。由于全数字值在 CSS 中无效,它们在 CSS 选择器中也是无效的,最终只会给自己带来麻烦。labeldivididid

于 2012-05-24T09:52:05.010 回答
3

正如 TJ 所说,您的标记无效。使用正确的标记,您只需使用 HTML 和 CSS 即可实现此目的。

像这样的东西:

HTML

<li id="231"  class="main">
   <label class="name">David</label>
   <div class="hidden" id="231" >
      <p>Some Msg!!<p>
   </div>
</li>

CSS

div.hidden {
   display: none;
}
li.main:hover div.hidden {
   display: block;
}

示例:http: //jsfiddle.net/MWbS4/

于 2012-05-24T09:54:12.850 回答