Javascript 页面加载时隐藏ul
我想我的问题需要更多的解释。我试图让我的下拉菜单在ipad上正常运行。我有顶级菜单项和子菜单项。当我点击顶层时,子菜单下拉,这是正确的。然后,当我点击子菜单项中的一个时,我的html页面将加载到我的index.html(#!befordable holidays.html)中。问题在于,动态加载html时,子级别下拉列表不会消失。因此,一旦我点击了一个父项,子菜单就永远在那里 我认为在动态加载的html的顶部使用一些javascript来隐藏ul是可行的 我不确定页面如何加载的正确术语,因为这是一个购买的模板。例如,mysite.com是索引,当我转到另一个页面时,它就是mysite.com!second-page.html 当页面加载时,如何在菜单中隐藏ul? 这是我的htmlJavascript 页面加载时隐藏ul,javascript,jquery,menu,hide,Javascript,Jquery,Menu,Hide,我想我的问题需要更多的解释。我试图让我的下拉菜单在ipad上正常运行。我有顶级菜单项和子菜单项。当我点击顶层时,子菜单下拉,这是正确的。然后,当我点击子菜单项中的一个时,我的html页面将加载到我的index.html(#!befordable holidays.html)中。问题在于,动态加载html时,子级别下拉列表不会消失。因此,一旦我点击了一个父项,子菜单就永远在那里 我认为在动态加载的html的顶部使用一些javascript来隐藏ul是可行的 我不确定页面如何加载的正确术语,因为这是
<li><a href="#">Tester</a>
<ul class="menu-hide">
<li ><a href="#!pay-as-you-go.html"><span class="title">PAY AS YOU GO</span></a></li>
<li ><a href="#!affordable-holidays.html"><span class="title">AFFORDABLE HOLIDAYS ALWAYS</span></a></li>
<li ><a href="#!how-points-work.html"><span class="title">HOW POINTS WORK</span></a></li>
<li ><a href="#!more-than-a-room.html"><span class="title">MORE THAN A ROOM</span></a></li>
</ul>
</li>
这是我发现的接近我想要的javascript:
<script type="text/javascript">$("div.menu-hide").hide()</script>
$(“div.menu-hide”).hide()
但我似乎不能瞄准ul.menu-hide。我试过这个
<script type="text/javascript">$("ul.menu-hide").hide()</script>
$(“ul.menu hide”).hide()
试试这个
<script type="text/javascript">
$(window).load(function () {
$("div.menu-hide").hide()
})
</script>
但不同之处在于,即使所有图形尚未加载,当加载HTML文档且DOM就绪时,document ready事件也已执行
当整个页面(包括所有帧、对象和图像)完全加载时,窗口加载事件将在稍后执行
读得好
试试这个
<script type="text/javascript">
$(window).load(function () {
$("div.menu-hide").hide()
})
</script>
但不同之处在于,即使所有图形尚未加载,当加载HTML文档且DOM就绪时,document ready事件也已执行
当整个页面(包括所有帧、对象和图像)完全加载时,窗口加载事件将在稍后执行
读得好
您似乎丢失了文档。准备好呼叫了吗
<script type="text/javascript">$(document).ready(function(){$("ul.menu-hide").hide()});</script>
$(document).ready(函数(){$(“ul.menu hide”).hide());
还要确保在其他javascript之前声明了指向jQuery库的链接
您似乎丢失了文档。准备好呼叫了吗
<script type="text/javascript">$(document).ready(function(){$("ul.menu-hide").hide()});</script>
$(document).ready(函数(){$(“ul.menu hide”).hide());
还要确保在其他javascript之前声明了指向jQuery库的链接
通过JavaScript在页面加载时隐藏HTML元素将导致该元素在显示后隐藏时产生闪烁效果 我会用css文件隐藏元素,然后通过JavaScript显示 css代码:
.menu-hide{ display: none; }
jQuery显示代码:
$(function(){
$('.menu-hide').show();
});
通过JavaScript在页面加载时隐藏HTML元素将导致该元素在显示和隐藏时产生闪烁效果 我会用css文件隐藏元素,然后通过JavaScript显示 css代码:
.menu-hide{ display: none; }
jQuery显示代码:
$(function(){
$('.menu-hide').show();
});
为什么不通过样式表隐藏它,然后根据需要显示它呢?可以为您节省一个FOUC。在加载dom后您是否尝试过。i.e$(document).ready(function(){}),我同意m90@m90-如果要通过JS显示,最好(通常)通过JS隐藏,这样在禁用JS的浏览器中,页面仍然可用……为什么不通过样式表隐藏页面,然后根据需要显示呢?可以为您节省一个FOUC。在加载dom后您是否尝试过。i.e$(document).ready(function(){}),我同意m90@m90-如果要通过JS进行披露(通常)最好通过JS隐藏,这样在禁用JS的浏览器中,页面仍然可用……然而,这种方法的缺点意味着任何关闭javascript的用户都不会看到此菜单。@SimonWest这是一个很好的观点。在这种情况下,您可以合并一个noscript标记,该标记应用
display:block
样式。然而,我不会使用javascript作为菜单,而是使用纯css。然而,这种方法的缺点是,任何关闭javascript的用户都不会看到这个菜单。@SimonWest这是一个很好的观点。在这种情况下,您可以合并一个noscript标记,该标记应用display:block
样式。然而,我不会使用javascript作为菜单,而是使用纯css。这篇文章是否与您使用$(window.load()
而不是$(document.ready()
)相矛盾?在所有图像加载之后,当您隐藏某个内容(您希望从一开始就隐藏该内容)时,可能会闪烁/闪烁。访问DOM的能力应该足够了?这篇文章是否与您使用$(window.load()
而不是$(document.ready()
)相矛盾?在加载完所有图像后,当您隐藏某个(您希望从一开始就隐藏的)对象时,可能会闪烁/闪烁。访问DOM的能力应该足够了?这几乎可以工作了。它符合我的要求,但现在还有另一个问题。我刚刚编辑了我的问题,进一步解释了这一点。当页面开始加载时,您的建议确实隐藏了正确的ul,但是有没有办法在页面加载完成后使其再次可用?由于ul在菜单中,因此需要在页面加载开始时将其隐藏,然后再次使其可用。这几乎可以正常工作。它符合我的要求,但现在还有另一个问题。我刚刚编辑了我的问题,进一步解释了这一点。当页面开始加载时,您的建议确实隐藏了正确的ul,但是有没有办法在页面加载完成后使其再次可用?由于ul位于菜单中,因此需要在页面加载开始时将其隐藏,然后再次使其可用。