HTML を直接変更できないように、既存のサイトに追加する拡張機能を作成しています。基本的に、スペースだけで区切られた単一の div に含まれる一連のリンクがあります。jquery を使用して、このシリーズの任意の場所に独自のリンクを追加し、右クリック コンテキスト メニューのように、リンクのすぐ隣に小さなメニューを開こうとしています。リンク/メニューのホバー フォーカスがなくなると、消えるはずです。
実際の動作のためにjqueryを処理できますが、このメニューのhtmlをドキュメントのどこに配置する必要があるかについて少し心配です。それは体の最後にあるべきですか?リンクの直前/直後?そして、リンクの上にカーソルを置いたときに、この要素の正しい位置を取得するにはどうすればよいですか? 例を見つけましたが、それらはすべてリストを使用しています。リンクの横に表示されるリンク ホバーのメニューが必要なだけです。
要するに、私の主な関心事は、リンクの横にポップアップ div を正しく配置する方法です。それに続いて、リンクの代わりにメニューにカーソルを合わせようとしたときに、メニューを開いたままにする方法があります。
これは、何をすべきかわからない前に、どこまで到達できるかです: http://jsfiddle.net/jRpyp/
$(".menu a").filter(function(index) { return $(this).text() === "Link 3"; }).after(" | <a href=\"#\" id=\"popup-link\">My text</a> | ");
$("#popup").toggle();
$("#popup-link").hover(
function(e)
{
$("#popup").show();
},
function(e)
{
$("#popup").fadeOut("slow");
});
そしてHTML:
<div class="menu">
<a href="#">Link 1</a> | <a href="#">Link 2</a> | <a href="#">Link 3</a> | <a href="#">Link 4</a> <br />
<a href="#">More links</a> | <a href="#">More links</a> | <a href="#">More links</a> | <a href="#">More links</a>
</div>
<div id="popup">
<ul>
<li>Link 1</li>
<li>Link 2</li>
</ul>
</div>