Internet Explorer 8 中的 jQuery 隐藏-重新定位-显示错误
$('.hexLink').hide(); //Hides All hexLink elements
renderHexagons(); //Position hexLink elements
positionElements(); //Position elements within hexLink elements
handleEvents(); //Establish events and handlers and Show hexLink elements
我在 IE8 中使用此代码的问题是,它会短暂显示我的页面元素,大约半秒。在那段时间里,这些元素没有按照我喜欢的方式定位,而且看起来很糟糕,但在这段时间之后,它们会重新渲染到我想要的位置。我页面中的所有元素都会发生这种情况。我目前正在本地主机中对此进行测试。无论如何,我可以重新编码,这样就不会发生这种情况吗?不过在 Chrome 上一切看起来都很好。
$('.hexLink').hide(); //Hides All hexLink elements
renderHexagons(); //Position hexLink elements
positionElements(); //Position elements within hexLink elements
handleEvents(); //Establish events and handlers and Show hexLink elements
My problem with this code in IE8 is that it shows my page's elements for a brief moment, for about half a second. And during that period these elements are unpositioned the way I like them to be and they look quite bad, but after this period they are re-rendered in the position I want them to be. This happens to all elements in my page. I am currently testing this in localhost. Is there anyway I could recode So that this will not happen? Everything looks fine on Chrome though.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以最初将元素隐藏起来,然后仅在重新定位后才显示它们。
You could start the elements off hidden initially, then only show them after they are re-positioned.
嗯,这是因为它可以完成你所有的事情了。
没有简单的解决方案(除了让你的代码更高效)。
但是,您可以显示加载动画并阻止页面直到全部完成,然后解除阻止,所有这些都使用很棒的 jquery blockui 插件。
所以你会:
希望这有帮助。干杯
Mmm, it's because the time it gets to do all your stuff.
No easy solution (other than making your code more efficient).
But, you could, show a loading animation and block the page until all finishes, then unblock, all this using the awesome jquery blockui plugin.
So you'd have:
Hope this helps. Cheers