JavaScript для выбора текста на веб-странице - PullRequest
0 голосов
/ 12 апреля 2010

Я пытаюсь написать букмарклет, который захватывает любой выбранный текст на веб-странице и отправляет его на мой сайт. Он должен (надеюсь) работать в Chrome, FFX, Safari и IE. Я сделал поиск и нашел функцию, но она не работает. Вот код:

<html>
<body>
<div onClick=getSelText()>Click</div>
<div>please select me</div>
</body>
<script language=javascript>
function getSelText(){
    var txt = 'nothing';
    if (window.getSelection){
        txt = "1" + window.getSelection();
    } else if (document.getSelection) {
        txt = "2" + document.getSelection();
    } else if (document.selection) {
        txt = "3" + document.selection.createRange().text;
    } else return;

    alert("selected text = " + txt);
}
</script>
</html>

когда я выбираю текст в div "пожалуйста, выберите меня" и нажимаю div клика, я просто получаю "selected text = 1"

спасибо

1 Ответ

0 голосов
/ 12 апреля 2010

Когда вы щелкаете по элементу div, вы отменяете выделение текста, поэтому выбор - ''. Если вы выделите часть текста «Клик», он должен работать. Или, если вы выберете что-то и введете «javascript: getSelText ()» в адресной строке.

...