ただし、Javascriptが有効になっているユーザーがページを読み込んですぐにカートに追加を押すと、ページから離れてしまいます。
スクリプトはいつ起動しますか?ドキュメントのオンロードを使用している場合は、初期化する前にすべての画像がダウンロードされるのを待機します。これにより、ユーザーはクリックして購入することができます。
<script>をページの下部に配置するか、フレームワークによって提供されるDOMContentLoadedスタイルのイベントを使用して、DOMの準備ができたときにJS拡張機能をトリガーする場合、リンクはユーザーが最初にボタンをクリックする可能性はほとんどありません。
本当に、最初に解析される要素とロードされるドキュメントの間に配置されるクリックを本当に遅らせたい場合は、次のように書くことができます。
<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に依存するすべての潜在的なソリューションに当てはまります。
そして、壊れた購入ボタンほどビジネスにとって悪いことはありません。