2

我希望在向下滚动时可以在页面顶部停止导航栏。

我知道 Jquery 以某种方式参与了解决方案,但我真的不知道如何使用它!

这是我的 header.php 文件(我在 wordpress CMS 上):

>
    <?php if (has_nav_menu('top-menu', 'responsive')) { ?>
        <?php wp_nav_menu(array(
                'container'       => '',
                'fallback_cb'     =>  false,
                'menu_class'      => 'top-menu',
                'theme_location'  => 'top-menu')
                ); 
            ?>
    <?php } ?>

<?php responsive_in_header(); // header hook ?>

<?php if ( get_header_image() != '' ) : ?>

    <div id="logo">
        <a href="<?php echo home_url('/'); ?>"><img src="<?php header_image(); ?>" width="<?php if(function_exists('get_custom_header')) { echo get_custom_header() -> width;} else { echo HEADER_IMAGE_WIDTH;} ?>" height="<?php if(function_exists('get_custom_header')) { echo get_custom_header() -> height;} else { echo HEADER_IMAGE_HEIGHT;} ?>" alt="<?php bloginfo('name'); ?>" /></a>
    </div><!-- end of #logo -->

<?php endif; // header image was removed ?>

<?php if ( !get_header_image() ) : ?>

    <div id="logo">
        <span class="site-name"><a href="<?php echo home_url('/'); ?>" title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?>" rel="home"><?php bloginfo('name'); ?></a></span>
        <span class="site-description"><?php bloginfo('description'); ?></span>
    </div><!-- end of #logo -->  

<?php endif; // header image was removed (again) ?>

<?php get_sidebar('top'); ?>
            <?php wp_nav_menu(array(
                'container'       => 'div',
                    'container_class'   => 'main-nav',
                    'fallback_cb'     =>  'responsive_fallback_menu',
                    'theme_location'  => 'header-menu')
                ); 
            ?>

        <?php if (has_nav_menu('sub-header-menu', 'responsive')) { ?>
            <?php wp_nav_menu(array(
                'container'       => '',
                'menu_class'      => 'sub-header-menu',
                'theme_location'  => 'sub-header-menu')
                ); 
            ?>
        <?php } ?>

        <?php responsive_header_bottom(); // after header content hook ?>

</div><!-- end of #header -->
<?php responsive_header_end(); // after header container hook ?>

<?php responsive_wrapper(); // before wrapper container hook ?>
<div id="wrapper" class="clearfix">
    <?php responsive_wrapper_top(); // before wrapper content hook ?>
    <?php responsive_in_wrapper(); // wrapper hook ?>
4

3 回答 3

1

您可以通过使用 css 来实现这一点

thead {position:fixed; top:0px;}

检查此链接

http://jsfiddle.net/john_rock/h6hfX/1/

于 2013-07-30T12:58:13.570 回答
0

如果您希望它在向下滚动并回滚到之前的状态后停留在顶部,您可以使用 Anthony Garand 的Sticky jQuery Plugin。只需将其附加到您的菜单上,通常:

$('.menu-main-menu-container').sticky({topSpacing:0});
于 2013-07-30T13:01:04.867 回答
0

我认为你想要做的事情可以很容易地用 jQuery Waypoints 完成:http: //imakewebthings.com/jquery-waypoints/

你可以在这里看到他们的“粘性”示例:http: //imakewebthings.com/jquery-waypoints/shortcuts/sticky-elements/

如果这回答了您的问题,请标记为已接受。:)

于 2013-07-30T14:54:38.773 回答