所以我有一张包含2个div的表。每个div包含一个图像和一些文本。我希望当悬停其中一个div时,另一个div的元素(所有元素)都会变得模糊。
// HTML
<table>
<tbody>
<div id="1">
<tr>
<td rowspan="3"><img src="url"/></td>
<td><h2>Lorem ipsum</h2></td>
</tr>
<tr>
<td><p><span class="important">Clients:</span> Lorem / Ipsum</p></td>
</tr>
<tr>
<td><p><span class="important">Scope:</span> Lorem ipsum dolor sit amet</p></td>
</tr>
</div>
<tr class="separator">
<td colspan="2"></td>
</tr>
<div id="2">
<tr>
<td rowspan="2"><img src="url"/></td>
<td><h2>Lorem</h2></td>
</tr>
<tr>
<td><p><span class="important">Scope:</span> Lorem ipsum dolor sit amet</p></td>
</tr>
</div>
</tbody>
</table>
我创建了类.blur以通过js影响想要的div,但不知何故,它不起作用,文本和图像都不模糊。
// CSS
.blur {
color: transparent;
text-shadow: 0 0 8px rgba(0,0,0,0.5);
-webkit-filter: blur(10px);}
// JS
$(document).ready(function() {
$('#1').hover(function() {
$('#2').addClass('.blur');
}, function() {
$('#2').removeClass('.blur');
});
$('#2').hover(function() {
$('#1').addClass('.blur');
}, function() {
$('#1').removeClass('.blur');
});});
这是jsfiddle:http://jsfiddle.net/52v9y/
我在哪里错过了什么?
答案 0 :(得分:2)
请参阅此更新jsfiddle。
在.
和addClass
函数中指定类时,不需要removeClass
,因为它们接受的唯一参数是类属性。您的html也无效,因为只有tr
个元素才能成为tbody
的直接子级。
答案 1 :(得分:1)
这不是有效的HTML代码。您无法将div
放在table
代码的中间。这就是为什么它不起作用。
你也没有包含jQuery。我已经更新了小提琴,你可以看看:http://jsfiddle.net/52v9y/2/
答案 2 :(得分:0)
放弃div
元素以获得有效的HTML。您的选择器中的类名称没有Leasing dot,正如其他贡献者所建议的那样。将类分配给tr
元素。根据您的实际用例,考虑调整事件处理程序中的类选择器(例如$("#1 td.whatever")
)