2011-09-09 141 views
0

对于jQuery,我有一个相当简单的问题(关于那些该死的选择器!)。我的身上有2个div,当我的网站加载时。但是我希望他们在单击某个图像时显示。问题是图像是在一些其他元素(div's,ul,li)内。jQuery从另一个div中显示/隐藏div中的div

我做了这个简单的小提琴来显示div结构http://jsfiddle.net/MspYV/。所以问题是,如何从其他div /元素到达div的#change_settings_container和.change_settings_translucent?

+0

你可以张贴的HTML标记上在这里你的问题? jsfiddle今天运行不好:\ –

回答

1

的div的#change_settings_container它的那样简单$("#change_settings_container")

+0

嘿乔斯,$符号代表什么?身体选择器? –

+0

@Peter Boomsma'$(something-in-here)'是jQuery如何选择元素。我们在这里使用的是一个id选择器'$(“#id-of-attribute”)'。你可以阅读更多关于它[这里](http://api.jquery.com/id-selector/)。您可能正在使用jQuery(如jQuery(“#change_settings_container”)),但它们的工作方式相同(后者是无冲突模式版本)。 –

+0

嘿,这是我的一个愚蠢的评论,我知道这一点。但问题是我如何选择身体中的div?我会在你给出的链接上读一点(ps,你怎么能发表代码注释?) –

0
$("span.change_settings_close_button img").click(function(){ 
    $('div.change_settings_translucent').hide(); 
}); 

$("span.toggle").click(function(){ 
    $('div.change_settings_translucent, div#change_settings_container').toggle(); 
}); 

在这里看到一个例子:http://jsfiddle.net/expertCode/K2znp/

+0

嗨ExpertCode,它没有太多关于选择图像,但如何点击图像关闭一个div在body中,而不是与图像相同的div结构。 –

+0

我更改了代码。这就是你想要的? – expertCode

+0

嘿谢谢,这是理想,但问题是,jQuery无法找到它需要隐藏的div,因为它们是完全不同的div。 –

0
<script> 
    $(document).ready(function() { 
     $(".small-image img").click(function() { 
      $(".main-image img").hide(); 
      $(".small-image img").show(); 
      var imgsrc = $(this).attr("src"); 
      $(".main-image").addClass("img"); 
      $(".img").css('background-image', 'url(' + imgsrc + ')'); 
     }); 
    }); 
</script> 
+0

你想添加一个解释给你的答案?因为它不清楚为什么这个答案应该脱颖而出 – secretformula