我在写一些jQuery代码来切换Div可见性。我遵循这里发布的方法:http://jsfiddle.net/Ga7Jv/。使用JQuery切换div可见性
当用户点击图片(H2标签旁边)时,我希望它切换div。
这里是Jquery的:
$(function()
{
$(".expander").live('click', function(){
$(this).next("#TableData").slideDown();
$(this).removeClass('expander');
$(this).addClass('expanded');
});
$(".expanded").live('click', function(){
$(this).next("#TableData").slideUp();
$(this).removeClass('expanded');
$(this).addClass('expander');
});
下面是HTML:
<h3><img src="toggle.png" class ="expander" alt="Expand"/>
Tabular Data</h3>
<div id="TableData">
//Content
</div>
的是应用于类扩展的CSS,当我点击它看来,CSS改变按钮,我会期待的。所以我假设代码找到了切换按钮并切换了类。
但它不执行我需要的操作,即根据该类上下滑动div。
另一种方式我试图做到这一点是这样的:
$(function(){
$('.expander').live('click',function(){
$('#TableData').show();
$('#TableData').hide();
});
这仅关闭DIV,当我点击它不会再次打开。我也有它,所以它关闭很好,但是当我打开它时,它会立即关闭。
感谢
**边注:** *在jQuery 1.7的,所述.live()方法被弃用。使用.on()附加事件处理程序。老版本的jQuery用户应该优先使用.delegate(),而不是.live()。* – DaniP
感谢所有的答案,我最终使用了Satpal来避免改变类,如果我不需要。 – Hulaz