2015-11-17 2 views
0

Код, который Marketo предоставил нам, в настоящее время запускает лайтбокс при загрузке страницы, но мы хотели бы, чтобы лайтбокс срабатывал при нажатии кнопки.Trigger Marketo Lightbox on buttonclick

Мы будем очень благодарны за то, что указали направление коррекции на то, как это сделать. Я просмотрел документацию Marketo Developer и с помощью вопросов stackoverflow, отмеченных «Marketo», но не смог найти пример того, как это сделать.

Пожалуйста, сформулируйте Ваши вопросы относительно Marketo. Я удалил уникальные идентификационные номера, такие как Munkin и formId.

<script src="//app-ab02.marketo.com/js/forms2/js/forms2.min.js"></script> 
<form id="mktoForm_number"></form> 
<script>MktoForms2.loadForm("//app-ab02.marketo.com", "number", number, function (form){MktoForms2.lightbox(form).show();});</script> 
+0

Вы можете загрузить форму с дисплеем типа: нет, а затем использовать MktoForms.lightbox(), чтобы отобразить его как лайтбокс, и удалите отображение: ни на одном четном т, который вы хотите. – kelkington

+0

Это сработало. Я использовал некоторые jQuery, чтобы сделать то, что вы рекомендовали. Однако есть проблема, которую я не ожидал: после закрытия Marketo modal, щелкнув маленькую «x» в верхнем правом углу, модальный не может быть открыт снова, если страница не перезагружена. Возможно ли сохранить скрипт Marketo в функции и нажать кнопку для вызова функции нажатием кнопки? – adoboda

ответ

3

Попробуйте

Поместите форму в любом месте на странице

<script src="//app-ab02.marketo.com/js/forms2/js/forms2.min.js"></script> <form id="mktoForm_number"></form>

Тогда

<script type="text/javascript"> 
$("#popup-link").click(function(e){ 
    e.preventDefault(); 
    MktoForms2.loadForm("//app-sjh.marketo.com", "mktoForm_ID", "mktoForm_number", function (form){MktoForms2.lightbox(form).show(); 
     // Hide the form and display a thank you message 
     form.onSuccess(function(form){ 
       formElem = this.formElem[0]; 
       formParent = formElem.parentNode; 
       formParent.removeChild(formElem); 
       formParent.innerHTML = '<h3>Thank you!</h3>'; 
     }); 
    }); 
}); 
</script>