0

我的网站使用带有 CSS 文件的 html。我的导航栏使用 Jquery 点击动画。我想向导航功能添加另一个级别的动画,但无法弄清楚如何在不破坏现有点击动画(滚动)的情况下插入另一个点击动画(滑动/切换)。

这是现在的设置方式

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Jonah Rapino - Film Scoring</title>
<link rel="stylesheet" href="rapino.css" media="screen, projection"/>
<link href='http://fonts.googleapis.com/css?family=OFL+Sorts+Mill+Goudy+TT' rel='stylesheet' type='text/css'>
<link rel="shortcut icon" href="" type="image/x-icon">
<style type="text/css">
</style>
</head>

<body>
<script src="http://code.jquery.com/jquery.js"></script>
<script type="text/javascript">
  $(function() {
$("#nav").click(function(e){
  e.preventDefault();
  var theClicked = $(e.target).attr("href"),
  targetImg = $(theClicked).offset().top;
  $("html,body").animate({
    scrollTop : targetImg -10,
  }, 1400);
//console.log(targetImg)
});
});
</script>
</body>

<div id="content"> 
<div id="nav"> 
<ul class="listless">
  <li><a href="#about">About</a></li>
  <li><a href="#current-work">Work</a></li>
  <li><a href="#feature-film-scores">Film</a></li>
  <li><a href="#silent-film-scores">Silent</a></li>
  <li><a href="#classical-music">Classical</a></li>
  <li><a href="#info">Info</a></li>
  <li><a href="#download">Download</a></li>
  <li><a href="#friends">Friends</a></li>
</ul>
</div>

我想要什么:我想在 Work 链接中插入一个切换功能。当您单击“工作”时,会出现包含链接的弹出子菜单 - 电影、无声、经典,您可以单击它们,页面将滚动到指定的目标。目前它们只是静态链接。

我希望我的语言/布局不会令人困惑或在这里浪费时间。任何人都可以帮忙吗?

4

1 回答 1

1

也许像

$('#nav a').click(function(e) {
   e.preventDefault();
   if($(this).attr('href') === '#current-work') {
      // do your animation for work
   }
   else {
      // do animation for all other items
      var targetImg = $($(this).attr('href')).offset().top;
      $("html,body").animate({
         scrollTop : targetImg -10,
      }, 1400);
   }
});
于 2012-06-26T17:24:31.090 回答