javascript - 根据点击的链接显示 div

标签 javascript jquery html css

我试图让点击链接显示特定的 div。有点像灯箱效果。我设法使单击链接加载并使用 class pop 为 div 设置动画,但我需要在其中显示特定内容。

<html>
  <head>
    <style>
      .pop{
        background-color: rgba(17,17,17,0.50);
        position:fixed;
        top:0;
        right:0;
        bottom:0;
        left:0;
        z-index: 1000;
        overflow-x: hidden;
        overflow-y: hidden;
        display:none;
      }
    </style>
    <script type="text/javascript">
      $(document).ready(function(){
        $('.pro a').click(function(event){
          event.preventDefault();
          $('.pop').fadeIn(function(){
            $(this).css({'display':'block'},550);
          });
        });
      });
    </script>
  </head>
  <div class="pro">
    <a href="#"></a>
    <a href="#"></a>
    <a href="#"></a>
  </div>
  <div class="pop" id="1">
    <div class="mem">profile 1</div>
  </div>
  <div class="pop" id="2">
    <div class="mem">profile 2</div>
  </div>
</html>

我将不胜感激任何帮助。 提前致谢。

这里是 jsfiddle

最佳答案

您可以使用 html5 data- 属性来实现这一点。将它添加到 anchor 标记以跟踪哪个 div 显示为弹出窗口并在点击事件中使用其 id:

HTML:

<div class="pro"> 
 <a href="#" data-id="first">first</a>
 <a href="#" data-id="second">second</a>
 <a href="#" data-id="third">third</a>

</div>
<div class="pop" id="first">
    <div class="mem">profile 1</div>
</div>
<div class="pop" id="second">
    <div class="mem">profile 1</div>
</div>
<div class="pop" id="third">
    <div class="mem">profile 1</div>
</div>

JQUERY:

$(document).ready(function () {
    $('.pro a').click(function (event) {
        event.preventDefault();
        $('.pop').hide(); // hide previous popup div
        var id = $(this).data("id"); // get the div id which to show
        $('#' + id).fadeIn(function () {  // show cuurent click link's popup
            $(this).css({
                'display': 'block'
            }, 550);
        });
    });

});

fiddle :

http://jsfiddle.net/n7j8o66f/

关于javascript - 根据点击的链接显示 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25713433/

相关文章:

javascript - 尝试按字母顺序排列 jQuery UI Accordion ;适用于除 IE 之外的所有内容

javascript - $.post 之后的 jQuery 事件在请求完成之前发生

javascript - TinyMce 编辑器中的纯文本和富文本编辑器选项

javascript - jquery 在鼠标单击时选择了太多元素

javascript - 如何在 html 5 canvas 中删除区域的剪辑

c# - 从 MVC Controller 返回 Json 但日期格式在 javascript 中不正确

javascript - JS Math setinterval 一个范围内的随机数

javascript - 合并缺少键的对象

jquery - CSS 和 jQuery - 如何强制 2 条规则一起工作

javascript - jQuery 数据表服务器端重新加载新的发布数据