2014-12-04 101 views
0

JQuery的传球元素的id,我试图通过DIV属性数据作为元素的ID。我有一组配对的div,第一个作为一种报头的,确定什么在第二,不可见的div。我试图通过第一个mouseenter事件切换第二个div。我试图与整个集团,而不是每对一个函数来做到这一点。为触发事件

我的代码如下:

$(document).ready(function() { 
 
    $('div.jobs').mouseenter(function() { 
 
     var id = (this).attr("data-item"); 
 
     $($("#"+ id).toggle()); 
 
    }); 
 
});

HTML如下:

<div class="jobs" id="ident" data-item="data"> test div</div> 
<br /> 
<div class="jobs" id="data" style="display:none">Some Data</div> 
<br /> 
<div class="jobs" id="ident1" data-item="data1"> test div 2</div> 
<br /> 
<div class="jobs" id="data1" style="display:none">Some Other Data</div> 
<br /> 

好像它应该工作。我得到我想从前面的div的数据项切换div的id,当我触发鼠标进入事件,但它不会切换。我肯定错过了什么。

+0

我觉得你的问题是'$($( “#” + ID).toggle());'我觉得应该是'$( “#” + ID) .toggle()' – Kolban 2014-12-04 01:19:31

回答

0

在这个小提琴看一看:

http://jsfiddle.net/z26ogdzq/

我做了一些细微的修改,以你原来的JS。

​​

+0

是的,这有效。谢谢大家。 – axon 2014-12-04 03:02:16

0

你忘了把$。尝试

var id = $(this).attr("data-item"); 
+0

啊,语法。 – axon 2014-12-04 03:01:36