css jquery隐藏一个div,显示另一个
我正在接受挑战。 我有2个divs
,一组display:none;
在页面加载时的CSS中我有两个相应的链接。 当用户点击link1
我想显示div1
并隐藏div2
。 当用户点击link2
我想显示div2
并隐藏div1
。
我无法让这个工作! 任何帮助非常感谢。 小号
这是一个例子:
$(function () { $(".div1, .div2").hide(); $(".link1, .link2").bind("click", function () { $(".div1, .div2").hide(); if ($(this).attr("class") == "link1") { $(".div1").show(); } else { $(".div2").show(); } }); });
这是演示
首先,无论何时在这里提问,请提供您的问题的HTML。
其次,你可以做点什么……
取决于您的HTML结构
如果是这样的话
link1 link2 div for link 1 div for link 2
然后jQuery代码看起来像这样
$('a').click(function(e){ $('div').eq($(this).index()).show(); $('div').not($('div').eq($(this).index()).hide(); });
这是一个非常简单的原则……你可以通过很多方式实现它,这只是一个例子。
忽略选择器,我很懒。
HTML – >
Show Div 1 | Show Div 2
Div 1 Div 2
CSS – >
#div1{ display:none; }
jQuery – >
$('a:eq(0)').click(function(){ $('#div1').toggle(); $('#div2').toggle(); }); $('a:eq(1)').click(function(){ $('#div2').toggle(); $('#div1').toggle(); });
你在jquery上死了吗? 这可以使用普通的旧JavsScript完成。
function switchVisible() { if (document.getElementById['div1'].style.visibility == 'visible') { document.getElementById['div1'].style.visibility = 'hidden'; document.getElementById['div2'].style.visibility = 'visible'; } else { document.getElementById['div1'].style.visibility = 'visible'; document.getElementById['div2'].style.visibility = 'hidden'; } }
然后在你的link1中:
看看这个例子它可能会帮助你: http : //jsfiddle.net/MUtPy/2/ ^^在Jquery中有很多方法可以做到这一点,但这个例子肯定会让你开始=)
那个小提琴帮助了我,这真的可以理解: http : //jsfiddle.net/bipen/zBdFQ/1/
$("#link1").click(function(e) { e.preventDefault(); $("#div1").slideDown(slow); $("#div2").slideUp(slow); }); $("#link2").click(function(e) { e.preventDefault(); $("#div1").slideUp(slow); $("#div2").slideDown(slow); });