Mailchimp弹出单击控件不起作用-需求未定义。我该如何解决?

时间:2019-01-30 10:56:08

标签: jquery popup require mailchimp

我一直在尝试修改mailchimp弹出窗口,以便单击按钮即可打开,而不是根据定义的显示时间/用户滚动/用户退出自动打开。

我在Stackoverflow和github上都遵循了代码建议,但控制台始终返回错误:

未捕获的参考错误:未定义require。

我是Web开发的新手,因此,如果我很幸运能得到任何答案,请按照简单的步骤进行。

以下代码: HEAD CODE

<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

**注意,我在页面末尾有这些标头参考,但建议将它们包括在标头中,以确保它们在mailchimp代码之前加载,但无济于事

身体代码

<button id="open-popup">Open Mailchimp Pop-Up</button>

<script type="text/javascript" src="//s3.amazonaws.com/downloads.mailchimp.com/js/signup-forms/popup/unique-methods/embed.js" data-dojo-config="usePlainJson: true, isDebug: false"></script>

<script type="text/javascript">
function showMailingPopUp() {
    require(["mojo/signup-forms/Loader"], function(L) { L.start({"baseUrl":"mc.us20.list-manage.com","uuid":"067c96b741d636cde6950635a","lid":"a1d6aad6ba"})})
    document.cookie = "MCEvilPopupClosed=; expires=Thu, 01 Jan 1970 00:00:00 UTC";
};
 $('#open-popup').click(function() {showMailingPopUp()});
</script>

我正在实时服务器上运行此代码(因为建议在localhost上不会执行此操作),但没有区别。

在此版本(或任何JQuery)中未定义require()吗?如果是这样,是否有解决方法?

我注意到了原始的Mailchimp代码(通过在页面加载时自动加载弹出窗口的方式),它使用了以下代码:

<script type="text/javascript">window.dojoRequire(["mojo/signup-forms/Loader"], function(L) { L.start({"baseUrl":"mc.us20.list-manage.com","uuid":"067c96b741d636cde6950635a","lid":"a1d6aad6ba","uniqueMethods":true}) })</script>

所以window.dojoRequire()与我想要定义的click函数中的require()

任何人和所有帮助都将得到感激。

0 个答案:

没有答案