Я пишу расширение, которое добавляет к существующему сайту, поэтому я не могу напрямую изменять HTML. В основном существует серия ссылок, содержащихся в одном div, разделенных только пробелами. Я пытаюсь использовать jquery, чтобы добавить ссылку моего собственного в произвольное место в этой серии и открыть небольшое меню сразу рядом со ссылкой, например контекстное меню правой кнопки мыши. Когда фокус укладки ссылки/меню исчез, он должен исчезнуть.Как добавить всплывающее меню рядом со ссылкой на hover?
Я могу обработать jquery для фактического поведения, но я немного обеспокоен тем, где в документе я должен размещать html для этого меню. Должно ли это быть в конце тела? Прямо перед/после ссылки? И затем, когда я наводил ссылку на ссылку, как мне получить правильное позиционирование для этого элемента? Я нашел примеры, но все они используют списки. Мне просто нужно меню для наведения ссылки, которое появляется рядом со ссылкой.
Вкратце, моя главная забота о том, как правильно расположить всплывающее окно рядом со ссылкой. Вторичным является то, как сохранить меню открытым, когда я пытаюсь навести на него, а не ссылку.
Это, как далеко я могу получить, прежде чем я не знаю, что делать: 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>
Что такое 'функция filter' нужно? –
Чтобы выбрать ссылку на ее текст. Я знаю, что я мог бы также использовать: eq() или: nth-child(). – ssb
Значит, вы только хотите его для этой ссылки? –