3

我正在尝试创建一个侧面菜单,以便当用户单击链接时,div(页面中间)中的当前内容应该fadeout和新页面内容应该fadeIn,我创建了这个方法:

<script type="text/javascript">
    $('a').click(function() {
        $('#content').html('<img src="ajax-loader.gif" width="100" alt="loading">').show();
        var page = $(this).attr('href');
        $('#content').hide().load(page).fadeIn('slow');
        return false;
    });
</script>

但是效果不如预期,有大神知道这个方法怎么增强吗?我期望fadeout当前内容到背景页面和fadeIn新内容。
但是当前的内容就消失了

我的html代码:

<body>
    <h1><img src="images/cooltext679404844.png"/></h1>
    <ul id="nav" class="mmenu" type="none">
        <li><a href="contact.php"> Contact </a></li>
        <li><a href="register.php"> Register </a></li>
        <li><a href="login.php"> Login</a></li>
        <li><a  href="upload.php"> Submit paper </a></li>
        <li><a  href="tabs.php"> tabs menu test </a></li>
        <li><a href="time-frame.php">profile</a></li>
        <li><a  href="status-reviews.php">check status of reviews</a></li>
    </ul>
    <p style="font-size: small;text-align: center;bottom: 0px;left: 300px; line-height: 0%;position:fixed; background-color: #cc8800">
        <a target="content" href="about.php">About us</a> | <a target="content" href="terms.php">Terms of service</a> | <a target="content" href="policy.php">Privacy Policy</a>
    </p>
    <div id="content"></div>
</body>
4

2 回答 2

1

尝试:


$("#content").fadeOut('slow', function(){
    $("#content").load(page, function () {
            $(this).fadeIn('slow');
    });
});     
于 2012-04-24T09:04:55.263 回答
0

在负载中使用回调。否则它会立即淡入:

var content = $('#content');
content.fadeOut().load(page, function() {
    content.fadeIn();
});
于 2012-04-24T09:02:17.110 回答