弹出内容有时会出现在主要内容之后

时间:2016-06-29 11:18:16

标签: javascript css wordpress forms popup

在WordPress网站上,我在屏幕的右上角设置了一个按钮(&#34;请求演示&#34;)所以当点击时会弹出一个包含一些文本和HubSpot表单的弹出窗口。我有它工作正常,但无论出于何种原因,十分之一的页面重新加载HubSpot表单的内容不会出现在弹出窗口中,但默认情况下显示在网页上的主要内容后面,而不点击按钮。< / p>

它在Firefox上特别糟糕,尽管它似乎在50%的时间内发生。我真的很难找到解决方案。

网站网址:http://crowdsight.co/

2 个答案:

答案 0 :(得分:0)

还没有成功地重现你的问题,但听起来像js隐藏表单并将click事件附加到“请求演示”失败了它的工作。可能是因为它找不到dom中的元素(表单和“请求演示”)。确保在dom准备就绪后发生表单和按钮的初始化:

jQuery(document).ready(function() {
    //initialization here
});

或:

document.addEventListener("DOMContentLoaded", function(event) {
    //initialization here
});//unlike the jQuery function, this only works for modern browsers.

如果上述操作失败,您可以尝试(尽管如果上述操作失败,这没有多大意义):

window.onload = function() {
    //initialization here
    //here we wait for all the resources to be retrieved before we go, while
    //the above approaches only waits for the dom
}

答案 1 :(得分:0)

前几天我遇到了同样的问题。在您为该按钮设置样式的CSS工作表中添加以下行:

zindex: 1;

在上下文中,它看起来像这样:

.button {
   margin: 2px;
   border: 1px solid red;
   zindex: 1;
}