Pet*_*ter 5 javascript forms typeform
我在iframe中嵌入了一个Typeform嵌入到我的页面中.从我的JS我想知道用户已经完成了typeform(即点击提交).字体JS似乎没有提供任何可以监听的事件.目前我只想出以下解决方案 - 定期调用以检测是否正在显示outro页面:
document.getElementById('my-typeform-iframe').getElementsByClassName('outro').length > 0
Run Code Online (Sandbox Code Playgroud)
有一些更好的方法吗?
好吧,所以我在上面的假设中错了 - 事实证明,当用户提交表单时,typeform iframe会发出一个事件.事件已命名form-submit,可以通过以下方式处理它:
window.addEventListener('message', function(event){
if(event.data == 'form-submit')
// your business logic here
}, false);
Run Code Online (Sandbox Code Playgroud)
现在,Typeform具有“ onSubmit”回调功能。
<script src="https://embed.typeform.com/embed.js"></script>
<script>
window.addEventListener("DOMContentLoaded", function() {
var el = document.getElementById("my-embedded-typeform");
window.typeformEmbed.makeWidget(el, "https://admin.typeform.com/to/cVa5IG", {
onSubmit: function() {
alert("submited!");
}
});
});
Run Code Online (Sandbox Code Playgroud)
这是文档