Подсказка jQuery (без подключаемого модуля) с использованием позиции пользовательского интерфейса jQuery - Как это можно улучшить? - PullRequest
0 голосов
/ 08 марта 2012

Мне нужна помощь в рассмотрении основной всплывающей подсказки с использованием позиции пользовательского интерфейса jQuery.Подсказка jQuery получает атрибут title из ссылки и создает всплывающую подсказку при наведении на эту ссылку.Как можно улучшить этот код или сделать его более эффективным?Я хотел опубликовать это здесь в надежде, что это поможет другим.Я уверен, что потратил достаточно времени на то, что, как мне показалось, будет простым.

Вот мой код (хотелось бы, чтобы люди публиковали альтернативные версии):

http://jsfiddle.net/pN4Bw/

$(".tip a").hover(
    function() {
    var tipText = $(this).attr("title");
    $("<div class='toolTip' style='display:none;'>" + tipText + " </div>").insertAfter(this);
$('.toolTip').position({
    my: "left top",
    at: "right top",
    of: this,
    collision: "flip"
});
//Is there a better way to select the tooltip?
$(this).next().fadeIn(500); //should I fade it in this way?            
}, function() {
//Should I use a better selector?
$(this).next().fadeOut('slow', function() {
    $(this).remove();
    });
});​
  • Должен ли я вообще использовать позицию пользовательского интерфейса или какую-то другую технику?Я открыт для лучших решений.
  • Знаете ли вы о лучшей не плагиновой подсказке jQuery?
  • Я отказываюсь использовать плагин для чего-то подобного.
  • Я в восторге от StackOverflow
  • jQuery UI. Положение использовалось выше - http://jqueryui.com/demos/position/

Идеи, мысли, комментарии?Спасибо всем, надеюсь, это поможет и другим!

1 Ответ

1 голос
/ 08 марта 2012

Использование метода position () jQueryUI будет зависеть от того, используете ли вы уже jQueryUI на странице или нет.Было бы бесполезно загружать его, если все, что вам нужно, это позиция.

Не нужно много усилий для вычисления позиции с использованием смещения ссылки с помощью метода offet () и настройки ширины с помощью метода width ().

Если уже загружается jQueryUI ... position () - это очень удобный служебный метод, который экономит на выполнении вычислений самостоятельно

EDIT: использование опции "flip" для пользовательского интерфейса, однако, требует значительно больших усилийкодировать себя

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...