IE8 では何もしない単純な html リンクがあります。エラーはありません。ただそこに座っています。Chrome と FF で正常に動作します。リンクはクリック可能な画像です。
<p><a id="google-purchase-link" href="/purchase/google" data-ajax="false"><img src="https://checkout.google.com/buttons/checkout.gif?merchant_id=763453611943044&w=180&h=46&style=trans&variant=text&loc=en_GB" alt="Proceed to Google Checkout"/></a></p>
自分で試すには:
- http://www.oddprints.com/checkout にアクセスしてください
- 「何かをアップロードする」をクリック
- 「サンプル写真」をクリック
- 「プリント注文」をクリック
- 「Google で購入」をクリック
心配しないでください。何も買うつもりはありません。
IE では、リンクが機能していないように見えます。このリンクは、カートのサーバー側を構築する /purchase/google を指すだけで、データが入力された Google チェックアウト ページに一時的にリダイレクトされます。http://www.oddprints.com/purchase/googleにアクセスすると、正常にリダイレクトされます。
これをデバッグする方法はありますか?
更新: リンクは JavaScript で処理されています。IE8 で動作させるには、href 属性を window.location に具体的に追加する必要がありますが、問題は IE9 でも発生します。
かわった:
$("#google-purchase-link").click(function(e){
_gaq.push(function() {
var pageTracker = _gaq._getAsyncTracker();
setUrchinInputCode(pageTracker);
console.log(getUrchinFieldValue());
window.location = "/purchase/google?analyticsData=" + getUrchinFieldValue();
});
e.preventDefault();
});
に
$("#google-purchase-link").click(function(e){
_gaq.push(function() {
var pageTracker = _gaq._getAsyncTracker();
setUrchinInputCode(pageTracker);
console.log(getUrchinFieldValue());
window.location.href = "/purchase/google?analyticsData=" + getUrchinFieldValue();
});
e.preventDefault();
});
更新: 問題は console.log() を使用していました。どっ!