Как бы я показать диалог, когда я выбираю любой текст на странице, используя jQuery? - PullRequest
2 голосов
/ 18 мая 2011

У меня есть веб-страница, полная текста «скажем, как эта страница». Я не имею в виду «элемент ввода», я имею в виду, что любой текст пишется с тегами

или, и т. Д.

Когда я выбираю какое-то слово (слова), появляется всплывающее окно ИЛИ мини-окно ИЛИ с некоторыми параметрами, например, ссылкой на выбранный текст по электронной почте, копированием или печатью.

Это похоже на то, когда вы находитесь в любом браузере и выбираете какой-то текст, а затем нажимаете правую кнопку мыши на этом выделенном тексте, и появляется меню (встроенное в ваше окно ОС-).

Я хочу ту же историю, но диалог появляется сразу после выбора. не нужно делать правый клик.

Я читаю "UI / API / 1.8 / Dialog" http://docs.jquery.com/UI/Dialog и ".mouseup ()" http://api.jquery.com/mouseup/, а также я нашел эту замечательную статью здесь http://motyar.info/blog/2010/02/get-user-selected-text-with-jquery-and.html

Но все еще не могу сделать функцию, которую я хочу. Может быть, это легко, а я этого не вижу :)

Ценю ваш вклад! Спасибо!

Ответы [ 2 ]

1 голос
/ 18 мая 2011

Вы можете получить выделенный текст в событии mouseup с помощью следующего кода:

$(document).mouseup(function (event) {
    var text = document.selection.createRange().text;
    if (text != "") {
        //Use text in popup, etc... SAMPLE:
        alert(text);
    }
});
0 голосов
/ 18 мая 2011

Вместо .mouseup () я думаю, что вы хотите использовать .select():

http://api.jquery.com/select/

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