jqueryを使用してscrollto効果を使用するワードプレステーマを作成しています。
ハッシュ化されたURLを使用してページに入るまで、すべてがうまく機能します。
例えば:
http://www.domain.com/#contact
ページの一番下に移動します。
これはFirefoxでのみ発生し、他のブラウザでは発生しません... IEでも機能します:D
ともかく。
私が言ったように、あなたが別のページから来るまで、すべてが100%機能します。
スクロール用のJavaScriptを削除すると、関連するdiv.idに移動しますが、コードを追加し直すと機能しなくなります。
また、これはページの下部近くの宛先にのみ発生します。
divがwordpressから作成される前に、jqueryを読み取る場合に備えて、ヘッダーではなくフッター内にコードをロードしようとしましたが、これは適切ではありません。それは動作しません。
これが私が作成したjqueryです。
jQuery(function(){
/***************************************************
VERTICAL SCROLLING
***************************************************/
jQuery('a#ublblogback').click(function(){ parent.history.back(); return false;});
jQuery('#main a, a.internal, a.da-link, #menu_nav a, .footer_inner a, #footerinternal').click(function(e){
if (!jQuery(this).hasClass("thisisabloglink")) {
e.preventDefault();
}
jQuery('div#main ul li:last-child').find('a').css('background','none');
var $anchor = jQuery(this);
var $section = jQuery($anchor.attr('href'));
var topOffset = $section.offset().top;
// Adjust extra offset if not primary section
if(!$section.parent('#wrapper').length){
topOffset = topOffset - 0;
}
// Scroll page
jQuery('html, body').stop().animate({
scrollTop: topOffset
}, 1500, 'easeInOutExpo');
});
/***************************************************
SCROLLING
***************************************************/
jQuery(window).scroll(function(){
var scrollOffset = jQuery(this).scrollTop();
if(scrollOffset <= 125){
jQuery('#logo').stop().animate({top: -scrollOffset}, 700);
jQuery('#main').stop().animate({top: -scrollOffset + 155}, 50);
}else{
jQuery('#logo').stop().animate({top: -225}, 50);
jQuery('#main').stop().animate({top: 0}, 50);
}
});
})(jQuery);