【问题标题】:Hidden div visible on reload, jQuery timing重新加载时可见的隐藏 div,jQuery 计时
【发布时间】:2014-05-22 07:16:20
【问题描述】:

我正在为我的博客开发一个 Wordpress 主题,并且我有一种覆盖容器。如果您单击一个按钮,它会从顶部滑入并将整个页面向下推。

我用 jQuery 来做,用这个小代码:

$(document).ready(function () {

// variables
var overlay = $('#layout-overlay'); // Overlay ID

 // hide overlay-container
     overlay.css({
         display: 'block',
         marginTop: -overlay.height()
     });

...and more code...

如您所见,我只是通过根据容器的高度分配负边距顶部来隐藏容器,而容器的高度本身取决于内容。

只要我把布局放在一起,一切都很好。现在我开始将它放入实际的 Wordpress 主题中,覆盖容器在页面加载和页面重新加载时可见,它包含在每个页面上。它可能只是几毫秒,但很明显。它一眨眼就在那里,然后就消失了,就像从一开始就应该存在的那样。

任何想法我可以如何重新计时整个事情?

我将 JS 放在 <head> 标记中,并确保它是第一个被触发的代码。

【问题讨论】:

  • 您是否尝试过通过在样式表中将默认显示设置为无来隐藏覆盖? #layout-overlay {display:none;} 然后,当页面加载时,它将更新显示以阻止并设置高度。
  • 嘿,非常感谢。我实际上忘了复制css的行......已经很晚了,我真的没有看到。 ;)
  • 如果是这种情况,您应该考虑完全删除该问题,因为根据帮助中心,它是关于一个无法再重现或由简单的印刷错误引起的问题 i>.

标签: javascript jquery css wordpress


【解决方案1】:

如果您想摆脱故障,首先将叠加层的常规 CSS 设置为 display: none。如果出现问题,请尝试在页面完全加载后使用load 显示它。

更多关于 readyload 的信息: jQuery - What are differences between $(document).ready and $(window).load?

【讨论】:

  • 谢谢,我在 css 中有 display:none 并忘记将其复制到新文件中 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多