使用纯Javascript调用<div>标记中包含的CSS弹出窗口

时间:2016-05-15 16:42:58

标签: javascript html css

我正在使用CSS样式弹出窗口来捕获首页加载时的电子邮件地址。我正在使用cookie集,以确保我只加载页面。我的问题是,在纯Javascript中,我如何称呼该类

    <div id="openModal" class="modalDialog">
        <div>
            <a href="#close" title="Close" class="close">X</a>
            <h2>Keep up to date</h2>
            <p>Enter your email address and keep up to date.</p>
            <p><form>
              <input type="text" name="email"><br>
              <input type="submit" value="Go">
            </form>

            </p>
        </div>
    </div>


<style>

    .modalDialog {
        position: fixed;
        font-family: Arial, Helvetica, sans-serif;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: rgba(0,0,0,0.8);
        z-index: 99999;
        opacity:0;
        -webkit-transition: opacity 400ms ease-in;
        -moz-transition: opacity 400ms ease-in;
        transition: opacity 400ms ease-in;
        pointer-events: none;
    }

    .modalDialog:target {
        opacity:1;
        pointer-events: auto;
    }

    .modalDialog > div {
        width: 400px;
        position: relative;
        margin: 10% auto;
        padding: 5px 20px 13px 20px;
        border-radius: 10px;
        background: #fff;
        background: -moz-linear-gradient(#fff, #999);
        background: -webkit-linear-gradient(#fff, #999);
        background: -o-linear-gradient(#fff, #999);
    }

    .close {
        background: #606061;
        color: #FFFFFF;
        line-height: 25px;
        position: absolute;
        right: -12px;
        text-align: center;
        top: -10px;
        width: 24px;
        text-decoration: none;
        font-weight: bold;
        -webkit-border-radius: 12px;
        -moz-border-radius: 12px;
        border-radius: 12px;
        -moz-box-shadow: 1px 1px 3px #000;
        -webkit-box-shadow: 1px 1px 3px #000;
        box-shadow: 1px 1px 3px #000;
    }


    .close:hover { background: #00d9ff; }
    </style>

我的Javascript

 function getCookie(name) {
    var value = "; " + document.cookie;
    var parts = value.split("; " + name + "=");
    if (parts.length == 2) return parts.pop().split(";").shift();
  }



  function loadEmail()
  {
    //  document.cookie = "loaded=none";
    var loaded = getCookie("loaded");

    if (loaded !== "true") {
        openModal;  <<< Call ID >>> 
    }


        document.cookie = "loaded=true";
  }


  <body onLoad="loadEmail()">

如何从Javascript而不是<div id="openModal" class="modalDialog">

调用<a href="#openModal">Open Modal</a>

1 个答案:

答案 0 :(得分:1)

不是100%确定你要做的是什么,但是如果你试图用纯粹的js来定位一个元素,请尝试:

var elm = document.getElementById('openModal'); 
elm.style.display = 'block';
elm.style.pointerEvents = "auto";