scrolleramaとsuperscrolleramaを認識しています。
私はそれらの両方と数日間苦労しました。そして、ピン留めだけのためにそれらを機能させることはできません。アニメーションとタイプのサポートは必要ありません。サンプル ドキュメントを使用して、HTML コンテンツを一度に 1 ブロック要素ずつ削除しようとすると、改ページされます。scrollerama は、例全体が存在する場合にのみ機能するようです。またはもっと可能性が高い.... 私はそれを理解するほど頭が良くありません。
私がやりたいのは、タグを固定してから<h1></h1>
、特定のタグに到達したときに固定を解除することだけです。
この質問もここで見ました: CSS Trouble with Pinned Header Divですが、まったく機能していないようです。
コード例:
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<style type="text/css">
</style>
<script language="Javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script language="Javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js"></script>
</head>
<body>
<article>
<header></header>
<section id="wrap">
<h1> Pin this when it hits the window top</h1>
<div class="innercontent">
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p class="unpin">Unpin the previous h1 tag when this hits window top</p>
</div>
<h1> Pin this when it hits the window top</h1>
<div class="innercontent">
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p class="unpin">Unpin the previous h1 tag when this hits window top</p>
</div>
<h1>Pin this when it hits the window top</h1>
<div class="innercontent">
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p>inner content here</p>
<p class="unpin">Unpin the previous h1 tag when this hits window top</p>
</div>
</section>
<footer></footer>
</article>
</body>
</html>
どこかのjquery関数の例へのリンクは非常に役立ちます。または、scrollerama を pin/upin 機能だけに落とす方法の簡単な説明が役立ちます。
追加:
sbeliv01 はこの質問を提案しました: jQuery を使用して現在の位置に最も近い要素を見つける方法
ただし、余白が調整されている場合 (HTML5 のリセット)、そのメソッドは失敗します。要素にマージン調整がまったくない場合にのみ機能します。スタイルのない div で H1 タグを単純にラップしようとすると、ページのスクロール時にひどいちらつきが発生します。
これは機能しませんが、必要に応じて使用できるように jsFiddle をセットアップしまし
た
。