Тем не менее, пользователь с включенным Javascript, который загружает страницу, а затем сразу же нажимает добавить в корзину, тоже уходит со страницы.
Когда вы запускаете свои скрипты? Если вы используете документ onload, он будет ждать загрузки всех изображений перед инициализацией, что действительно даст пользователю возможность щелкнуть мышью на покупку.
Если вы запускаете расширение JS, когда DOM готов, либо просто поместив свой внизу страницы, либо с помощью события в стиле DOMContentLoaded, предоставляемого вашей платформой, ссылки должны адаптироваться достаточно быстро, пользователь вряд ли сначала нажмет кнопку.
Если вы действительно хотите отложить клики, которые помещаются между первым анализируемым элементом и загружаемым документом, вы можете написать что-то вроде:
<script>
function methodcall(obj, name) {
return function() {
obj[name].call(obj);
};
}
</script>
...
<a href="nonjsversion" onclick="setTimeout(methodcall(this, 'click'), 500); return false;">Buy</a>
...
Так что он будет просто вращаться там, опрашивая (а в IE - утечка памяти), пока не будет создан обработчик реальных щелчков ссылки. Это довольно некрасиво и хрупко в том смысле, что если ваш скрипт по какой-то причине ломается (и это JavaScript, так что вполне вероятно, что в какой-то момент, в каком-то браузере это произойдет), ваша кнопка сломается. Эта проблема относится ко всем потенциальным решениям, основанным на более поздней версии JavaScript, включающей ранее отключенные действия.
И нет ничего хуже для бизнеса, чем сломанная кнопка покупки.