jquery - 在页面加载时显示第一个 div,并在我单击另一个 anchor 时隐藏它

标签 jquery html css

所以我只是通过 freecodecamp 类(class)深入研究 Web 开发。我正在做第一个元素:“致敬页面”,我想制作一种交互式时间轴:您单击一年,它会显示关于那一年发生的事情的文本内容的 div。

我已经设法在 Stack Overflow 中找到它,但我似乎无法让第一个 div 在网页加载时显示,所以它不仅仅是一个空白区域。

到目前为止,这是我的代码:

$(".link").click(function(e) {
  e.preventDefault();
  $('.content-container div').fadeOut('slow');
  $('#' + $(this).data('rel')).fadeIn('slow');
});
.content-container {
  position: relative;
  width: 400px;
  height: 400px;
}
.content-container div {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div id="tribute-info">
  <ul id="timeline">
   <li><a class="link" href="#" data-rel="content1"> 1911 </a> </li>
   <li><a class="link" href="#" data-rel="content2"> 1923 </a> </li>
   <li><a class="link" href="#" data-rel="content3"> 1932 </a> </li>
   <li><a class="link" href="#" data-rel="content4"> 1943 </a> </li>
   <li><a class="link" href="#" data-rel="content5"> 1954 </a> </li>
   <li><a class="link" href="#" data-rel="content6"> 1957 </a> </li>
  </ul>
 <div class="content-container">
  <div id="content1">This is the test content for part 1</div>
  <div id="content2">This is the test content for part 2</div>
  <div id="content3">This is the test content for part 3</div>
  <div id="content4">This is the test content for part 4</div>
  <div id="content5">This is the test content for part 5</div>
  <div id="content6">This is the test content for part 6</div>
  <div id="content7">This is the test content for part 7</div>
 </div>
</div>

最佳答案

希望我的代码片段能以某种方式帮助您。

祝你有美好的一天!

// use this to show any content by id
$('#content1').fadeIn('slow');

$(".link").click(function(e) {
  e.preventDefault();
  $('.content-container div').fadeOut('slow');
  $('#' + $(this).data('rel')).fadeIn('slow');
});
.content-container {
position: relative;
width: 400px;
height: 400px;
}
.content-container div {
display: none;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<div id="tribute-info">
  <ul id="timeline">
   <li><a class="link" href="#" data-rel="content1"> 1911 </a> </li>
   <li><a class="link" href="#" data-rel="content2"> 1923 </a> </li>
   <li><a class="link" href="#" data-rel="content3"> 1932 </a> </li>
   <li><a class="link" href="#" data-rel="content4"> 1943 </a> </li>
   <li><a class="link" href="#" data-rel="content5"> 1954 </a> </li>
   <li><a class="link" href="#" data-rel="content6"> 1957 </a> </li>
  </ul>
   <div class="content-container">
    <div id="content1">This is the test content for part 1</div>
    <div id="content2">This is the test content for part 2</div>
    <div id="content3">This is the test content for part 3</div>
    <div id="content4">This is the test content for part 4</div>
    <div id="content5">This is the test content for part 5</div>
    <div id="content6">This is the test content for part 6</div>
    <div id="content7">This is the test content for part 7</div>
   </div>
  </div>

关于jquery - 在页面加载时显示第一个 div,并在我单击另一个 anchor 时隐藏它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53728769/

相关文章:

ajax - 获取函数外部json请求的变量(jquery)

html - 如何使用 nth-child() 设置样式列表

jquery - 第 n 个子元素选择了错误的元素

css - block 元素在另一个 block 元素中的盒模型

javascript - 添加选定的属性jquery

java - Ajax 不将表单数据发送到 servlet

javascript - 日语文本的按键事件

php - 我的购物车产品添加和减去无法正常工作

javascript - 响应式菜单不会滚动到右侧的 div,而是滚动到页面顶部

jquery - Canvas 外菜单的溢出与视差冲突