回答:
アンカーを作成するときは、次のように名前を要素のIDとして割り当てる必要があります。
リンク:
<a href="#contact">Contact</a>
アンカー:
<div id="contact">
// Your form here
</div>
クリックすると、このアンカーに移動します。スムーズなスクロールでトランジションをアニメーション化したい場合は、jQueryを次のように使用できます。
jQuery(document).ready(function($) {
$('a[href=#contact]').on('click', function(e) {
e.preventDefault();
$('html,body').animate({scrollTop:$(this.hash).offset().top-0}, 500);
});
});
これはjQueryを使用して行うことができます(Lodderが提案)。これは代替ソリューションです(StackOverflowでのこの回答から)。このコードをindex.php
ファイルに配置します。
<script>
var $root = jQuery('html, body');
jQuery('#contact').click(function() {
var href = jQuery.attr(this, 'href');
$root.animate({
scrollTop: $(href).offset().top
}, 2000, function () {
window.location.hash = href;
});
return false;
});
</script>
さらに、メニュー項目がサイトのどの部分からでも機能する必要がある場合(連絡先情報がホームページにのみ表示される場合)、これをメニュー項目のURLに入れます。
index.php/#contact