私は非常に軽い wp テーマを構築しています。サイドバーにはウィジェットがほとんどなく、2 ページの長さしかありません。ここで、ユーザーが下にスクロールしてウィジェットが見えなくなったときに、残りのサイドバーを利用したいと考えています。これは、特に記事が非常に長い場合に最適です。
jqueryを使ったフローティング要素が一般的です。私が言ったように、これは非常に軽いテーマであるはずです。jQueryは非常に重いです。特定のページの長さで要素を表示するために、JavaScriptのみを使用して、表示および非表示にすることはできますか?
注: このテーマはレスポンシブです。
【追記】問題解決!ありがとうございます。
jQuery 用に 100kb 以上の帯域幅を節約しました。
他の人への参照として、ここに新しいスクリプトがあります。
<script defer type="text/javascript">var width = window.innerWidth || document.documentElement.clientWidth;
//Trigger the script only on browser width above 1150px. Recommended on responsive websites
if (width > 1150){ function testScroll(ev){
//Will set the position to FIXED with TOP=80px when user scrolls 850px below.
if(window.pageYOffset>850){document.getElementById("targetID").style.position = "fixed";document.getElementById("targetID").style.top = "80px";}
//Will set the position to ABSOLUTE with TOP=AUTO when user scrolls to top just above 850px line
else {document.getElementById("targetID").style.position = "absolute";document.getElementById("targetID").style.top = "auto";};
window.onscroll=testScroll; };
</script>