現在の最小限の例 ( http://jsfiddle.net/twPHW/ ) では:
<div style="overflow: hidden; height: 24px;">
<table>
<thead>
<tr>
<td style="background-color: rgb(109,173,157);">foo</td>
</tr>
</thead>
<tbody>
<tr>
<td style="background-color: rgb(236,222,117);">bar</td>
</tr>
</tbody></table>
</div>
「foo」セルだけが表示されます。次に、Ctrl-F (ブラウザで機能を検索) を実行し、「バー」と入力し始めると、div 内のテーブルが上に移動して (上部が変更された場合のように)、一致した要素がユーザーに表示されます。
検索機能で「バー」を探せるようにしたいのですが、そのレイアウト変更をjavascriptで処理したいです。
ブラウザの "find"をリッスンできないことはわかっています。このレイアウトの変更を聞いて、それを防ぐか、それに応じて残りのビューを同期したいだけです。スクロール イベントをリッスンしたり、Chrome Mutation Observerを使用したりしようとしましたが、うまくいきませんでした。何か案が ?
- レイアウトの変更に関する同様の Stackoverflow チケット : Chrome および IE の Ctrl F/Find 機能によりレイアウトが変更される
- レイアウトの変更に関する Chromium dev channel tracker のチケット: Chromium Issue 318191