-3

编辑改写:

我有一个输入框

<input type="text" id="some_id" />

我在浏览器中输入了一些文本:

Here is my text!

现在假设我双击“我的”这个词,我可以:

捕获这个值?是的,答案如下。

我可以在文本输入中设置它的样式以使其粗体或突出显示吗?

在我双击后的文本输入中,它最终看起来像:

这是我的文字!

4

4 回答 4

1

如果您只想选择单词(通过双击默认行为)

$('input').dblclick(function() {
    $(this).addClass(yourClass);
    alert(getSelected());
});

使用从http://mark.koli.ch/2009/09/use-javascript-and-jquery-to-get-user-selected-text.html找到的 getSelected 函数

getSelected = function(){
    var t = '';
    if(window.getSelection){
        t = window.getSelection();
    }else if(document.getSelection){
        t = document.getSelection();
    }else if(document.selection){
        t = document.selection.createRange().text;
    }
    return t;
}

仅对选定的文本应用一个类..我不知道它是否可能

于 2013-07-31T17:26:09.763 回答
0

我不认为这是可能的。

这是从输入中获取文本的示例

HTML:

<input type="text" id="inputbox"/>

JS:

$("input#inputbox").dblclick( function(e) {
   alert($(this).val());

 });

还有另一种在文档文本中而不是在输入框中执行此操作的方法

JS:

$(document).ready(function() {
    $("body").click(function(){
         var s = window.getSelection();
        s.modify('extend','backward','word');        
        var b = s.toString();

        s.modify('extend','forward','word');
        var a = s.toString();
        s.modify('move','forward','character');
         alert(b+a);

    });
});

yoiu可以在这里http://jsfiddle.net/niklasvh/rD2uE/试试上面的例子

于 2013-07-31T17:47:34.730 回答
-1

你必须使用dblclick:http: //jsfiddle.net/d9DfM/

HTML:

<input type="text" id="input">

乐JavaScript:

$('#input').dblclick(function () {
    $(this).css('background-color', "red");
    alert($(this).val());
});
于 2013-07-31T17:21:37.320 回答
-1
$(document).ready(function(){
    $("#sometextval").dblclick(function(){
        myval = $("#sometextval").val(); 
        alert(myval);
    });

})

小提琴:http: //jsfiddle.net/N9mcL/

于 2013-07-31T17:22:08.627 回答