在我的HTML中,#navInnerMapR和#navInnerMapL包含在div#navTwo中。
以下代码位于函数中。调用时,我需要fadeOut中的任何可见链接的功能#sragTwo,暂停片刻,然后淡入#navInnerMapR。
$('div#navTwo a').fadeOut(200, function() {
$('a#navInnerMapR').delay(100).fadeIn(200);
});
代码淡出链接,但不会淡入任何内容。我认为它们只会在fadeOut完成后才会启动,但是将延迟值更改为1000会使它有时工作但是非常错误。谢谢
更新这是一个小提示,显示在隐藏可见项之前隐藏的链接开始显示:http://jsfiddle.net/jamesbrighton/d9QKr/5/
更新道歉,我的问题不包括我需要实现的全部细节。我简化了它,因为我认为我只是有一些可以很容易修复的sytax问题。
div#navTwo实际上包含3个链接。在任何时候(动画运行之前的延迟除外)只能看到1个链接。我需要能够调用一个隐藏正在显示的其他2个链接的函数,然后显示#navInnerMapR。
不同的事件将调用此函数,因此可以看到#navInnerMapR的2个链接中的任何一个。感谢
更新我认为这个小提琴说明了这个问题。我创建了2个div.nav来说明不同的状态。我已经隐藏了每个内联CSS的不同链接。 JavaScript将重复显示和隐藏我的div中的链接,因此在不同的时间,相同的div将看起来像每个示例。
我创建了2个触发器来说明不同的事件需要调用该函数。单击触发器时,您可以看到两个示例的问题。在显示a.one之前,不会隐藏可见的div。谢谢你的耐心!
http://jsfiddle.net/jamesbrighton/dYvMS/24/
有趣的是,如果我改变$(' .nav a.one')。fadeIn(1000);警报,警报多次发射!不知道为什么会这样!
答案 0 :(得分:1)
修改:根据您的以下评论更新答案,
是的,这是我需要的,但我不确定它是否适用于我的实际情况 页。对不起,我的问题不够详细。代码 我给出的例子是简化的。在实际页面中,他们是3个链接 在div#navTwo中,任何时候只能看到其中一个。一世 需要能够调用隐藏任何链接并显示的函数 具体的一个,但div#navTwo中的其他两个链接之一可能是 可见。感谢
HTML:为navTwo中的所有链接添加了类
<div id="navTwo">
<a href="#" id="navInnerMapR" class="links">Right</a>
<a href="#" id="navInnerMapL" class="links">Left</a>
<a href="#" id="navInnerMapM" class="links">Middle</a>
<a href="#" id="navInnerMapU" class="links">Upper</a>
<a href="#" id="navInnerMapLW" class="links">Lower</a>
</div>
<强> JS:强>
$('.links').click(function() {
showHide($(this));
});
function showHide($this) {
$this.fadeOut(1000, function() {
$('#navTwo a').not($this).delay(1000).fadeIn(1000);
});
}
我想我理解你的需要。试试下面的DEMO,让我知道这是你想要的,
$('#navInnerMapR').click(function() {
runMeR($(this));
});
$('#navInnerMapL').click(function() {
runMeL($(this));
});
function runMeR($this) {
$this.fadeOut(1000, function() {
$('a#navInnerMapL').delay(1000).fadeIn(1000);
});
}
function runMeL($this) {
$this.fadeOut(1000, function() {
$('a#navInnerMapR').delay(1000).fadeIn(1000);
});
}
答案 1 :(得分:0)
正如你所说,你需要fadeOut div中任何可见链接的函数#navTwo,暂停片刻,然后淡出#navInnerMapR(不是其他链接,只有#navInnerMapR)。
$('#navTwo a').click(function(e) {
$(this).parent().children().each(function(i){
$(this).fadeOut('slow', function(){
$('a#navInnerMapR').delay(1000).fadeIn(1000);
});
});
});
小提琴是here。