JQuery向下钻取iPod菜单FOUC并选择当前页面

时间:2011-08-24 作者:Siavash Ahmadpour

我正在使用Drill Down Ipod Menu 我很喜欢显示子菜单的风格,但我有两个问题。

1-当我加载一个页面时,它会显示所有子菜单打开一秒钟,并且我体验到一个未设置样式的内容的闪现,当我更改样式css时,这有一段时间是好的,但它再次后退(我不知道css文件和问题之间是否有关系)。我的活动插件列表如下(我删除了一些其他插件):

1-Bulk Post Creator Plus2 Cat+Tag Filter3类别网格视图Gallery4-cforms5-Custom Field Template6 Post/Page/Category/Tag/Comment7-SwfObj8-vSlider9-wp-jalali的显示ID

如何防止菜单显示不带样式?

2-当我从一个子菜单导航到我的主页(从菜单外的链接)菜单保持在以前的状态时,我知道它使用cookie,但是否仍然可以显示当前页面而不是使用cookie?

如果无法解决这个问题,我可以使用什么插件来替代wordpress自定义菜单中的折叠菜单(而不是页面和类别)?

对不起,我的英语不好

2 个回复
最合适的回答,由SO网友:Chris_O 整理而成

您最好咨询插件的作者,因为它使用的是自定义jQuery插件脚本。

如何防止菜单显示为非样式?

您可以添加no-display 在页面加载时未设置样式的菜单元素,然后在css集中.no-display {display:none;}然后,当页面在调用插件javascript之前加载时,使用jQuery删除“no display”类。

jQuery(document).ready(function($) {
    $(\'#parent-div\').removeClass("no-display");
})

SO网友:Siavash Ahmadpour

多亏了chris的想法,我的问题按照以下说明解决了:

1-对于非样式视图:我尝试使用display:none; 但在显示菜单时出现了问题(删除菜单或将“none”更改为“block”后,没有显示内容),因此我在sidebar.php中的侧栏中添加了以下样式:

<div id="sidebar" style="position:absolute; left:-9999px; top:-9999px; ">
它将创建我的菜单,但显示在一个没人能看到的地方,接下来我使用jquery(前后)删除了页脚中的样式(当所有内容都加载时<?php wp_footer(); ?>):

<script>
jQuery(function ($) {
$(document).ready(function() { $(\'div#sidebar\').removeAttr(\'style\'); });
$(\'div#sidebar\').addClass("sideshow");


});
</script>
现在甚至在拨号连接中也没有FOUC!

2-对于菜单状态问题:使用Cookie删除ipod菜单以保存最后的菜单状态,因此我在标题中添加了以下代码以删除某些页面中的Cookie(紧随其后<div id=header>):

<?php if(is_page(array(22,35,13,27,67))){ ?>

<script>
jQuery(function ($) {
$.cookie(\'dd-wrapper-0\',\'\');
});
</script>

<?php } ?>
<?php if(is_front_page()){ ?>

<script>
jQuery(function ($) {
$.cookie(\'dd-wrapper-0\',\'\');
});
</script>

<?php } ?>
好好工作吧!

现在菜单重新启动到主页和所选页面的默认状态。

结束

相关推荐

Check if jquery library exist

如何检查头标记中是否存在jQuery库?<head> <script type=\"javascript/text\" src=\"http://code.jquery.com/jquery-1.6.2.js\"></script> </head> 如果不存在,我如何在jquery库的头标签中加载,我正在做一个插件,我想在jquery中加载我的插件脚本,并且能够检查jquery库是否存在,这样我的jquery脚本就会运行