我正在尝试更改.target
的父级兄弟.hover
的css。似乎无法使这段代码工作 - 我不确定我的函数开头是否需要$(this),或$('。target')...我认为它可能是.target因为那个正是我用.css()
改变了css。
<script type="text/javascript">
$(document).ready(function() {
$('.hover').hover(
function(){
$(this).parent().siblings('.target').css('display', 'inline');
},
function(){
$(this).parent().siblings('.target').css('display', 'none');
}
);
});
</script>
这是我的预感(也不起作用):
$('.target').parent(this).sibling().css('display', 'inline');
这是html
<div class="target" style="display: none;">
</div>
<div>
<span class="hover">Hover</span>
</div>
EDIT -----------------
当span
为class="hover"
时,它似乎无效。
EDIT numero dos --------------------
我的<span>
父母似乎很深,需要.parent().parent()
谢谢。
答案 0 :(得分:8)
假设您的HTML符合您的预期,并且没有看到它我无法评论改进,这应该有效:
$('.target').parent().siblings('.target').css('display', 'inline');
或者,如果.target
元素是下一个兄弟:
$('.target').parent().next('.target').css('display', 'inline');
或者,如果之前的兄弟姐妹(以及你发布的的html 以前的兄弟姐妹):
$('.target').parent().prev('.target').css('display', 'inline');
参考文献:
答案 1 :(得分:5)
安迪 检查这个小提琴,你似乎在你发布的第一个样本中有正确的代码。如果您可以发布您的HTML,我们可能会有更好的时间帮助您。 http://jsfiddle.net/nKtzB/3/
答案 2 :(得分:0)
如果您尝试对该块执行某些操作,请尝试使用display:block
。
您的代码仍然正常,请参阅:http://jsfiddle.net/Mx4ks/1/
还有其他一些问题。尝试粘贴你的HTML:)
在此处查看您自己的代码:http://jsfiddle.net/Mx4ks/