0

私はワードプレスのページを持っています。PayPalObjects へのリンクがいくつかあります。PayPalObjects では、購入をトリガーする要素の ID へのトリガーを含むコードをページのフッターに配置する必要があります。例えば...

<a id="buysong_4" target="PPDGFrame" title="Click here to buy this  song now.">$</a>

...そして、ページのフッターで:

<script type="text/javascript">
var embeddedPPFlow1 = new PAYPAL.apps.DGFlow( {trigger : 'buysong_1'});

function MyEmbeddedFlow(embeddedFlow) {
    this.embeddedPPObj = embeddedFlow;
    this.paymentSuccess = function() {
        this.embeddedPPObj.closeFlow();
        window.location.href = "http://whatever.com/success/";
    };
    this.paymentCanceled = function() {
        this.embeddedPPObj.closeFlow();
        top.location.href = "http://whatever.com/fail/";

    };

}
var myEmbeddedPaymentFlow1 = new MyEmbeddedFlow(embeddedPPFlow1);
</script>

現在、そのようなリンクが数十あるため、これらの ID をコンテンツにハードコーディングすることは避けたいと考えていました。例えば...

<a class="buysong" target="PPDGFrame" title="Click here to buy this song now.">$</a>

そこで、次の jQuery を追加しました。

jQuery('.buysong').each(function(index, element) {
        jQuery(this).attr('id', 'buysong_' + (index+1) );
   });

レンダリングされたページは ID 属性を各リンクに正しく追加しますが、PayPal js は正しくトリガーされません。IOW: ID をページに「ハードコード」する必要があります。これは、jQuery が PayPal スクリプトの後に起動していると思わせます。

では、どうすれば PayPalObjects スクリプトに、jQuery が ID を割り当てた後にのみ実行するように「指示」できますか? または...たとえそれを達成したとしても、ID属性を割り当てるため、まだ-機能しません。私がやりたいことに対して動的に信頼できないのですか?

ティア、

---JC

4

0 に答える 0