我们希望在页面加载时创建一个完整的页面光照框。目前,我们只能在它显示光盒后面的一些元素(例如客户端徽标、导航等)之后才能实现这一点。
因此,我要么需要一种方法在头中加载javascript之前在正文中加载javascript,要么需要在lightbox加载时屏蔽页面背景中的所有内容。
发布于 2014-04-22 15:39:13
这是我以前在其他库中遇到的一个问题。我把范围缩小到了我正在检查的那个事件,我想要启动这个lightbox脚本。有些lightbox脚本将等待加载window对象,然后才允许您启动lightbox,而其他脚本则不会。你需要后者。而且,您连接到的事件不应该是window加载,而应该是准备就绪的DOM。在jQuery中,应该是:
jQuery(documument).ready(function(){
//some code
});在香草JS中,应该是:
document.addEventListener("DOMContentLoaded", function() {
// some code
});这将等待所有DOM元素加载,但会在任何元素呈现之前触发。这应该是一个好点,因为所有需要的元素都在DOM中,而不是在页面上。这应该会在呈现页面时将您的lightbox放到DOM中,这样您就不会得到FOUC。
另一个选项
您可以采取的另一条不错的方法是将lightbox添加到HTML中的页面中,并设置一个cookie来隐藏lightbox。新用户将立即获得灯箱,返回的用户不会被另一个弹出窗口所困扰。你可以在很多医疗保健和政府网站上看到这一点。
https://stackoverflow.com/questions/23223624
复制相似问题