スクロールスクリプトでjQueryトリガーを私の子テーマに追加しようとしているときに、追加されてもトリガーされないことに気付きました。しかし、スクリプトが機能していない理由を理解しようとした後、スクロールの高さが大きいにもかかわらず、document.body.scrollTop
を使用して常に0
の値が返されることを見つけました。
私は未修正の親テーマでも同じことを試しましたが、それも常に0
を返すことがわかりました。だから私はそれを乗っ取っている何らかのスタイルやスクリプトがあると思います。私はそれを追い詰めようとしましたが、まだ幸運はありません。
Css/javascriptでscrolltopプロパティをリセットしたり、別のスクロールトリガーでスクリプトをトリガーしたりできる方法はありますか。
私は推測する
body.scrollTop
はstrictモードでは非推奨です。 strictモードの場合はdocumentElement.scrollTop
を、Quirksモードの場合のみbody.scrollTop
を使用してください。
だから私はあなたにdocument.documentElement.scrollTop
を使うことを勧めます。また、いつこの文を使用していますか?可能であれば、フルコードとコンソールエラーを表示してください。
あなたのコメントコードに関して編集された以下のコードを試してください、そしてあなたがコンソールで見るものを私たちに知らせてください。
jQuery(document).ready(function ($) {
jQuery(window).scroll(function(){
var ScrollTop = jQuery(window).scrollTop();
if (ScrollTop > 100) {
jQuery( ".site-header" ).addClass( "scroll" );
console.log("above 100");
}else{
jQuery( ".site-header" ).removeClass( "scroll" );
console.log("below or equal to 100");
}
});
});