2011-03-09 66 views
1

Heys!jQuery:只使用单击元素:使用.slideToggle和.nextUntil隐藏和显示点击鼠标上的各种内容

生病的权利切入主题,这里的jQuery代码:

jQuery(function() { 
    jQuery('.entry-content h1').nextUntil('h1').hide().prev().click(function() { 
     jQuery(this).nextUntil('h1').slideToggle(); 

});}); 

这里的HTML:

<div class="entry-content> 
    <h1>Header 1</h1> 
    <p>Paragraph 1</p> 
    <ul> 
     <li>Text</li> 
     <li>Some more text</li> 
    </ul> 
    <h1>Some Images and a div</h1> 
    <img src="image.jpg"> 
    <div class="somediv"> 
    <!--Some stuff --> 
    </div> 
    <h2>InBetween header</h2> 
    <p>text</p> 
    <ul> 
     <il>text</li> 
    </ul> 
</div> 

现在这个工程几乎像它应该,在拨动H1S下的内容幻灯片可见,再次切换时,它们向上滑动。但问题是,点击h2图像时也会发生效果。我试图在网上搜索这个,但还没有得到答案:/我会非常appriciate帮助:) Simpe小脚本,为负载不同类型的内容负载“InBetween”H1缩短通过隐藏其下的内容来显示页面,并在点击时显示。

+0

你失踪“后的”入门关闭内容类。 – 2011-03-09 22:17:32

+0

你错过了结束标签img – 2011-03-09 22:19:56

回答

0

感谢朱利安谁做我的工作有点困难,解决了这个问题;)

这里的现在就像它应该代码:只适用h1元素上点击:)问题是,我应用点击所有元素,THX七月:)

这里的工作的jQuery(做了WP,就这么矛盾的模式,如果即时通讯正确)

jQuery(function() { 
    jQuery('.entry-content h1').css('cursor' , 'pointer').click(function() { 
    jQuery(this).nextUntil('h1').slideToggle(); 
    }).nextUntil('h1').hide(); 
}); 
0

@Ulle,您的代码按预期工作。 请看下面摘录定义下一个,直到功能

如果提供的jQuery代表了一组DOM元素,在.nextUntil()方法允许我们通过在DOM树中这些元素的接班人搜索,停止当它到达与方法参数匹配的元素时。返回的新jQuery对象包含以下所有兄弟,但不包括与.nextUntil()选择器匹配的兄弟。 如果选择器不匹配或没有提供,则将选择所有后续的兄弟姐妹;在这些情况下,它会在未提供过滤器选择器时选择与.nextAll()方法相同的元素。

你可以找到完整的定义here

您所附加的Click事件以下所有兄弟姐妹。

+0

Thx m8 :)我会尝试去除事件从一切,除了H1 :) – Ulle 2011-03-09 22:36:41

+0

解决这个,感谢您的帮助:)这里的mycode现在的作品,就像我想要它至。 jQuery的(函数(){ \t \t jQuery的( '入门内容H1 ')。CSS(' 光标', '指针')。点击(函数(){ jQuery的(本).nextUntil( 'H1' ).slideToggle(); \t \t})nextUntil( 'H1')隐藏();。 \t \t \t \t $( “#信息里一个[HREF $ = PDF]”)后(” “); \t}); – Ulle 2011-03-12 14:28:59

+0

@乌尔做得好。您可以回答自己的问题并设置代码的格式,以便其他人可以更轻松地阅读它。如果你愿意,你可以接受我的答案。享受生活。 – 2011-03-12 17:31:50