0

那里有人可以帮助我解决以下问题:

我认为 $(this).trigger('click') 会复制用户的物理点击?这是我在文本区域上移动时触发点击事件的代码:

<!DOCTYPE html>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
    var getCursorPos = function(e){
        $(this).trigger('click');
        var $cursor_position = $(this).prop("selectionStart");
        $('#result').html('<p> Cursor position: ' + $cursor_position + '</p>');
        console.log("Auto click at ", $cursor_position, e.pageX, e.pageY);
    };
    $("#text").bind({
        mousemove: getCursorPos,
    });
});
</script>

<html>
    <div id="result"></div>
    <textarea id="text">This is some example text</textarea>
</html>

为什么触发点击事件后没有从textarea返回光标位置。如果我实际按下鼠标按钮,控制台读数会捕获光标位置。我认为 .trigger('click') 也会这样做。

当我将鼠标移到 textarea 上时,如何修复此代码以使其返回 textarea 中的光标位置?

任何帮助是极大的赞赏。

马丁

4

1 回答 1

1

我认为 $(this).trigger('click') 会复制用户的物理点击?

确实如此,但目前this内部$(this)似乎并未引用您要单击的元素。

尝试创建一个带有 的按钮id,然后试试这个:

$('#buttonID').trigger('click');

或者简单地说:

$('#buttonID').click();
于 2012-06-09T10:47:20.950 回答