- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在创造一些东西,我想知道是否有人可以帮助我解决那里的一个问题。我不知道,我怎样才能制作一个始终隐藏指定的 div id 并在单击另一个 div(例如按钮)时显示它的 javascript。编辑:
假设我有 4 个按钮。
<div class="section" id="info" style="margin-top: 0px; ">
<h3><a href="#">Button</a></h3>
</div>
<div class="section" id="search" style="margin-top: 0px; ">
<h3><a href="#">Button2</a></h3>
</div>
<div class="section" id="player" style="margin-top: 0px; ">
<h3><a href="#">Button3</a></h3>
</div>
<div class="section" id="socials" style="margin-top: 0px; ">
<h3><a href="#">Button4</a></h3>
</div>
现在假设我在另一个 div 中有一个内容,我想在点击上面的第一个按钮时淡入。
<div id="content-reveal">
<p>something here</p>
</div>
<div id="content-reveal-2">
<p>something here</p>
</div>
<div id="content-reveal-3">
<p>something here</p>
</div>
<div id="content-reveal-4">
<p>something here</p>
</div>
好的...位置已经设置好,一切都在正确的位置。
所以...我怎样才能隐藏 <div id="content-reveal">
并在有人点击我的按钮时显示它?
我有 4 个不同的按钮和 4 个不同的内容。因此,点击同一个按钮,内容再次消失,点击另一个按钮,旧内容消失,新内容出现。
简单的问题,对我来说是艰巨的任务......
如果有人能提供帮助,我真的很感激...
最佳答案
似乎其他答案并没有完全满足 OP 的要求。据我了解,OP 想要:
#content-reveal
#content-reveal
#content-reveal
(即,一旦显示,就应保持显示状态)基于此,这是我的解决方案:
$(document).ready( function() {
$('#content-reveal').hide();
$('#show-button').click( function() {
$('#content-reveal').fadeIn( 500 );
} );
} );
jsfiddle 在这里:http://jsfiddle.net/xK83w/
编辑:根据对 OP 问题的编辑,这里有一种方法可以完成您想要完成的任务:
$(document).ready( function() {
$('#content-reveal').hide();
$('#info').click( function() {
$('#content-reveal').fadeOut( 500, function() {
$('#content-reveal').html( '<b>info HTML</b>' );
$('#content-reveal').fadeIn( 500 );
} );
} );
$('#search').click( function() {
$('#content-reveal').fadeOut( 500, function() {
$('#content-reveal').html( '<b>search HTML</b>' );
$('#content-reveal').fadeIn( 500 );
} );
} );
// repeat for 'player' and 'socials'
}
在此处更新了 jsfiddle:http://jsfiddle.net/xK83w/1/
但是,如果您的内容 block 包含大量 HTML,您可能需要考虑一种不同的方法,这样您就不会为 Javascript 增加大量 HTML 文本的负担。例如,您可以有四个不同的 div
,然后像这样在它们之间进行选择:
<div id="content">
<div id="content-reveal-info">
<ul id="newsticker_1" class="newsticker">
<li>Lorem ipsum dolor sit amet, consectetur adipisicing elit...</li>
<li>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip...</li>
<li>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum...</li>
<li>Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia...</li>
<li>Bubble bubble ipsum dolor sit amet, consectetur adipisicing elit...</li>
</ul>
</div>
<div id="content-reveal-search">
<b>search HTML</b>
</div>
<div id="content-reveal-player">
<b>player HTML</b>
</div>
<div id="content-reveal-socials">
<b>socials HTML</b>
</div>
然后创建一个函数来进行实际的切换:
var activeElement;
function activateElement( eltSuffix ) {
if( activeElement ) {
activeElement.fadeOut( 500, function() {
activeElement = $('#content-reveal-'+eltSuffix);
activeElement.fadeIn( 500 );
} );
} else {
activeElement = $('#content-reveal-'+eltSuffix);
activeElement.fadeIn( 500 );
}
}
然后最后连接您的事件处理程序:
$(document).ready( function() {
$('#content div').hide();
$('#info').click( function() {
activateElement('info');
} );
$('#search').click( function() {
activateElement('search');
} );
$('#player').click( function() {
activateElement('player');
} );
$('#socials').click( function() {
activateElement('socials');
} );
} );
jsfiddle 在这里:http://jsfiddle.net/xK83w/1/
关于javascript - 单击另一个 div 时 fadeIn/fadeOut 指定的 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10590166/
我正在尝试这个: var notifications = $( "#notifications" ); notifications.fadeOut("slow") .complete(func
我的印象是,下面的回调函数中的 css 规则只有在 fadeOut 完成后才会执行。事实似乎并非如此。回调函数中的行实际上是在单击时执行的。有什么想法我哪里出错了吗? $('a.close_link,
我有一个 ID 为 basket 的元素,当鼠标悬停在另一个元素上时,会显示另一个元素,但该元素既不是第一个元素的子元素,也不是第一个元素的直接同级元素。我希望这是有道理的。 当我将鼠标移出第一个或第
我有三个李: Don't show again 看起来是这样的: 当用户按下不再显示时,我想在 3 秒后删除这些 li-s。 所以我只需要删除它们的代码。
我收到此错误: Uncaught TypeError: Object [object Object] has no method 'fadeout' 这是我的代码: // Fade out the S
当我使用 jQuery fadeOut 方法时,我遇到了一个特殊的问题。 当我使用下面的代码时,它会淡出。 $('#id').fadeOut("慢"); 但是当我使用下面的代码时,它并没有淡出,它只是
当用户单击“否”时,我的 .fadeOut() 无法正常工作,我知道这是因为 div.confirm 嵌入了span,这是调用 .fadeIn() 函数的地方。 我正在开发一个需要此 HTML 层次结
基本上,我试图通知用户他们是否成功添加了他们的文件,并且通知在 3 秒后消失。问题是我的整个页面都消失了,而不仅仅是通知。它与我的其他页面一起工作,只是想知道为什么它在这个页面上的工作方式不同。 se
我一直在网上搜索,找不到我的问题的答案,所以我会尝试自己做,并希望最好! 我有一个提供欢迎然后淡出的主舞台,但我想在淡出消失的那一刻切换舞台!有人对此有答案吗? 下面的小代码可以更好地理解: impo
我使用以下 HTML 代码: User's email is duplicated! 设置警报超时的JS是, $scope.ErrorAlert = false; setTimeou
我有一个 它有一个 CSS 背景图像。在 CSS 中,我有 :hover 伪类来更改背景位置。 我想fadeIn和 fadeOut使用 jQuery 的两个不同的背景图像。我不想为背景位置设置动画,但
我正在尝试为我正在开发的博客制作一个导航菜单,目前我正在尝试将其设置为单击“主页”选项卡时其他两个选项卡淡出的位置。我不知道为什么这段代码不起作用,因为它是非常简单的几行代码。我不会添加 CSS,因为
我是新手,我只想在移动完成后在我的文本移动中添加淡出效果。但问题是我已经将@keyframe 淡出。和.fadeout。但它没有用。有什么帮助吗?谢谢。这是代码。 HTML Wat
非常简单的前提。我有一个 float 图像,我想显示它背后的图像。在 chrome 中工作正常,但在 FF 11 中不行。 $("#floater").fadeOut("slow");
我正在开发一个导航栏,上面有一个图像并且那里有链接。当用户悬停这些链接时,它会将背景更改为导航栏悬停图像,并通过 CSS 的 background-position 属性指定其位置。现在我想让我网站上
我的 slider 有一些问题。我有彩色 div(在原始元素中是图像)和上面的文字。我想要的是: 淡入背景色 文本淡入 淡出文本 淡出背景色。 听起来很简单,但我无法获得这种效果。我不能及时淡出文本,
我对 .attr jQuery 方法有疑问。我想在点击时创建 4 个事件:淡出、延迟、更改 src 属性和淡入。我有这段代码: $( "#button" ).click(function() {
我最近一直在玩 jQuery,我决定制作这个简单的待办事项列表应用程序。我的代码的问题是,当我检查不是第一项的元素时,fadeOut() 函数不起作用。然而,在检查第一项之后,它开始为所有其他元素工作
默认情况下,我隐藏了几个 DIV,然后当用户单击某个按钮时我将它们淡入。这很好用,但是当我尝试使用所述 .holder DIV 中的跨度关闭 .holder DIV 时,只有第一个有效。当我点击其他人
我有一个包含图像和 .png 纹理的主页,它是每个图像上的伪元素。我需要这个 .png 纹理在悬停时 FadeOut。按原样配置后,我该如何实现该功能?还是通过更改当前设置更容易实现? @import
我是一名优秀的程序员,十分优秀!