Commerce SagePayとCommerce Paypoint Drupalモジュールで使用されるメソッドは次のとおりです。document.location.href
、最初に独自のiframeをロードし、次に外部のiframeをロードすることで古い値します。
したがって、基本的には、独自のJSコードと非表示のフォームを持つプレースホルダーとして空白のページをロードするという考えです。次に、親のJSコードは、その非表示フォームが#action
外部iframeを指す場所に送信します。リダイレクト/送信が行われると、そのページでまだ実行されているJSコードは、document.location.href
値の変更を。
iframeで使用されるJSの例を次に示します。
;(function($) {
Drupal.behaviors.commercePayPointIFrame = {
attach: function (context, settings) {
if (top.location != location) {
$('html').hide();
top.location.href = document.location.href;
}
}
}
})(jQuery);
そして、これが親ページで使用されているJSです:
;(function($) {
/**
* Automatically submit the hidden form that points to the iframe.
*/
Drupal.behaviors.commercePayPoint = {
attach: function (context, settings) {
$('div.payment-redirect-form form', context).submit();
$('div.payment-redirect-form #edit-submit', context).hide();
$('div.payment-redirect-form .checkout-help', context).hide();
}
}
})(jQuery);
次に、一時的な空白のランディングページに、外部ページにリダイレクトするフォームを含める必要があります。
src
iframe内のリンクをクリックすると、プロパティは変更されますか?私はそれについて確信がありません-もし私が推測しなければならなかったら、「いいえ」と言うなら。ありますプロパティを監視する方法は、(少なくとも私の知る限りではFirefoxで)私はそれが、この場合、任意の使用されるであろうかどうかはわかりません。