もっとボタンがクリックされたときにスムーズなページスクロールを別の場所にアニメーション化するjsがあります。
機能しますが、サイトに別の言語が選択されている場合は機能しません。ユーザーが言語をスペイン語などに変更すると、URL は に変わりますwww.example.com/ES
。これは、で動作するスムーズ スクロールを壊すようwww.example.com
です。
スペイン語でリンクをクリックするとmore
、スクロールの場所でページが完全にリロードされるように見えますが、スムーズなスクロールはありません。
これが私のjsです。スムーズ スクロールに代替言語の URL を含めるにはどうすればよいですか?
(function($){
$(function() {
$('a[href*=#]:not([href=#])').click(function() {
if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
if (target.length) {
$('html,body').animate({
scrollTop: target.offset().top
}, 1000);
return false;
}
}
});
});
})(jQuery);
編集:参考までに、スクリプトはWordpressのfunctions.phpにエンキューされ、使用している言語プラグインはqTranslateと呼ばれます