Копирует ли $(this).trigger('click') в jQuery физический щелчок мышью?
Может ли кто-нибудь там помочь мне со следующим:
Я думал, что $(this).trigger('click') будет повторять физический клик, сделанный пользователем? Вот код, который у меня есть для запуска события 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>
Почему он не возвращает позицию курсора из текстовой области после запуска события click. Если я физически нажимаю кнопку мыши, показания консоли фиксируют положение курсора. Я думал, что.trigger ('click') сделает то же самое.
Как бы исправить этот код, чтобы он возвращал позицию курсора в текстовой области, когда я перемещаю мышь над текстовой областью?
Любая помощь с благодарностью.
Martyn
1 ответ
Я думал, что $(this).trigger('click') будет повторять физический клик, сделанный пользователем?
Это делает, но в настоящее время this
внутри $(this)
не похоже на элемент, на который вы хотите нажать.
Попробуйте создать кнопку с id
и попробуйте это:
$('#buttonID').trigger('click');
Или просто:
$('#buttonID').click();