点击链接弹出一个DIV层窗口

做设备介绍页面的时候,发现每个设备点击查看详情都需要链接一个新的页面,这样比较影响网页浏览的效率和舒适度,所以想用弹窗的形式在当前页面展示详情。弹出的窗口要固定在浏览器窗口的中间位置,我采用了fixed固定布局。

<!--HTML-->
<body style="background-color: pink;">
    <p>某商品</p>
    <div id="cont_b" class="cont">
        <p>详情页</p>
    </div>
</body>
.cont { 
    display: block; 
    position: fixed; 
    top: 25%; 
    left: 25%; 
    width: 50%; 
    height: 50%; 
    padding: 20px; 
    border: 10px solid #ddd; 
    background-color: lightblue; 
    color: white;
    z-index:1; 
    overflow: auto; 
} 

此时的页面如下

但是现在的窗口是一直在页面上的,我需要做一个点击链接,能够控制窗口的显示和隐藏,要用到display: blockdisplay: none这两个语句,先把窗口的初始display设置成none。

<a href = "javascript:void(0)" onclick = "document.getElementById('cont_b').style.display='block'">请点这里</a>

同理,要在窗口<div>中增加一个关闭窗口(隐藏)的链接。这样就能控制窗口的打开和关闭了,如果页面中有很多的商品,查看详情时就可以在当前页面显示一个窗口,而不需要另外在进入一个新的页面。


  • javascript:void(0)

        javascript:void(0) 中最关键的是 void 关键字, void 是 JavaScript 中非常重要的关键字,该操作符指定要计算一个表达式但是不返回值。下面的代码创建了一个超级链接,当用户点击以后不会发生任何事。

<a href="javascript:void(0)">单击此处什么也不会发生</a> <!-- 和href="#"的区别是#包含了一个位置信息,默认的锚是#top,也就是网页的上端。而javascript:void(0), 仅仅表示一个死链接。-->
  • getElementById()

        返回指定 ID 的元素

  • display: block和display: none

        block属性是显示,none则是隐藏

猜你喜欢

转载自www.cnblogs.com/wangngu/p/10103365.html