ナビゲーションの高さを知ることができません。divへのスクロールアニメーション中に、nav/divの高さをオフセットすることができません
試み#1:
$("#process-link").click(function() {
$('html, body, #project-container').animate({
scrollTop: $("#process-work").offset().top
}, 2000 + $("nav#primary").height());
});
試み#2:
var headerHeight = $("nav#primary").height();
$.address.change(function(evt) {
var target = "#" + evt["pathNames"][0]; //Get the target from the event data
// If there's been some content requested go to it…else go to the top
if(evt["pathNames"][0]) {
var scrollToPosition = $(target).offset().top - headerHeight;
$('html, body, #project-container').animate({ 'scrollTop': scrollToPosition }, 600);
} else {
$('html, body, #project-container').animate({ 'scrollTop': '0' }, 600);
}
return false;
});
試行#3
$(function() {
$('#process-link').click(function() {
$("html, body, #project-container").animate({
scrollTop: $("#process-work").offset().top + $('nav#primary').height()
}, 2000);
return false;
});
});
HTML
<nav id="primary">Content</nav>
<div id="arrow-nav" class="container-full clearfix">Content</div>
<div id="project">
<div id="project-container">
<div class="container">
<section>
<p class="sm-title">Client:</p>
<h2 id="project-title"></h2>
<p id="project-description"></p>
<a id="process-link">View Process <i class="fa fa-long-arrow-right"></i></a>
<div class="row">
<div id="process-work">
<div class="col-6 fixme">
<h2 id="process-title">Process Work</h2>
<p id="process-description"></p>
</div>
<div class="col-6">
<div id="process-wireframes" class="owl-theme owl-carousel"></div>
</div>
</div><!-- end process-work-->
</div>
</section>
</div>
</div><!-- end project container -->
</div><!--closes project-->
私は#プロセス・リンクをクリックした後、それは#プロセスワークにあなたをスライドし、NAVの#プライマリおよびそれに応じて#矢印-NAVとオフセットの高さを計算してそれを作るしようとしています。
HTMLを提供できますか? –
「サイトを完全に壊した」とはどういう意味ですか?実際のエラーメッセージを投稿してください。 – C14L
最初の試みでは、scrollTop値の代わりにアニメーションの長さ(2000 +高さ)にナビゲーションの高さを追加します。あなたの質問や実際のコードに間違いがありますか?後者の場合、それはあなたの問題かもしれません。それ以外の場合は、HTMLを追加して、どの要素をどこにスクロールするかを記述してください。 – Lesley