HTML ページに埋め込んだときに、Marketo フォームが正常にロードされたことを検出する方法はありますか?
jQuery でフォームを操作したいのですが、.ready() イベントが発生したときに常に読み込まれるわけではありません。
HTML ページに埋め込んだときに、Marketo フォームが正常にロードされたことを検出する方法はありますか?
jQuery でフォームを操作したいのですが、.ready() イベントが発生したときに常に読み込まれるわけではありません。
Marketo Forms 2.0 には whenReady というメソッドが用意されており、Marketo フォームが準備完了イベントに達したときのコールバック関数を指定できます。したがって、このメソッドを使用して、Marketo フォームが読み込まれたときにクライアントに通知できます。
詳細については、 Marketo 開発者向けドキュメントを参照してください。
Marketo Forms 2.0.loadForm
メソッドでは、4 番目の引数としてコールバックを使用できます。そこに関数を追加するだけです。
.loadForm(baseUrl, munchkinId, formId [,callback])
例
MktoForms2.loadForm("//app-sjqe.marketo.com", "718-GIV-198", 621, function(form){
//from here we have access to the form object and can call its methods.
});
を使用する.whenReady(callback)
場合、「この関数が呼び出された時点で準備ができているフォームが既に存在する場合、渡されたコールバックがすぐに呼び出されます」、これはあなたが望むものではないかもしれません.
(@Murtza は Marketo で働いているので、彼の回答の方が公式かもしれませんが、私にはうまくいきませんでした)