3

ユーザーが[配送先住所と請求先住所が同じ]チェックボックスをオンにした場合、配送先住所フォームを非表示にします。

このコードは、IEを除くすべてでうまく機能します。

$("#order_shipping_same_as_billing").change(function() { 
  $("fieldset.shipping").toggle("blind", { 'direction' : 'vertical' }, 50);
});

IEは、チェックボックスがフォーカスを失うまで変更イベントを登録しません。これにより、ユーザーエクスペリエンスが不快になります。

多くのショッピングサイト(および非ショッピングサイト!)はこのようなことをします-私が見逃しているクロスブラウザ互換の方法があるに違いありません。

4

2 に答える 2

4

私は通常、 changeの代わりにチェックボックスのクリックイベントを使用します。そうすれば、IEでも機能します。

$("#order_shipping_same_as_billing").click(function() { 
  $("fieldset.shipping").toggle("blind", { 'direction' : 'vertical' }, 50);
});
于 2009-06-07T19:03:31.883 に答える
2

change イベントの代わりに click イベントを使用します。また、チェックボックスがマウスでクリックする以外の方法で変更された場合でもトリガーされます。

于 2009-06-07T19:02:05.617 に答える