Сообщение от Aetae
|
Отличить можно. Но зависит от цели. В простейшем случае достаточно определить отлично ли от нуля положение курсора при событии:
<input type="button" value="button" id="Btn">
<input type="button" value="button.click()" onclick="document.getElementById('Btn').click()">
<script>
var btn = document.getElementById('Btn');
btn.addEventListener('click', function(event){
alert( event.clientX|event.clientY ? 'Вручную' : 'Скриптом' )
}, false)
</script>
Однако эти значения можно подставить и при искусственном вызове. Далее уже идут ухищрения для каждого браузера отдельно. Например в firefox есть свойство события isTrusted - который честно говорит вызвано событие скриптом или вручную.(в IE тоже есть такое свойство, только там оно не работает)
Если цель борьба с накруткой или подобное - лучше использовать готовые решения.
|
Огромное спасибо!
А если умельцы делают клик мыши, скажем, на делфях? Эмулируя клик в духе такого:
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, x, y, 0, 0);
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, x, y, 0, 0);
Есть ли тут шансы как-то такое определить?