我有这个功能,会在onClick上弹出一个弹出窗口。但是,它在onClick和onLoad上都有效。当然,对于最终用户来说,每次加载页面时都必须退出窗口会很烦人。有没有人知道如何只在onClick上做这个?删除末尾的功能会完全停止脚本。
function showMailingPopUp() {
require(
["mojo/signup-forms/Loader"],
function(L) {
L.start({"baseUrl":"mc.us4.list-manage.com","uuid":"91363270e58a57510d5d933c6","lid":"b2d7dd4078"})
}
);
document.cookie = 'MCPopupClosed=;path=/;expires=Thu, 01 Jan 1970 00:00:00 UTC;';
document.cookie = 'MCPopupSubscribed=;path=/;expires=Thu, 01 Jan 1970 00:00:00 UTC;';
}
showMailingPopUp();
答案 0 :(得分:1)
调用函数onLoad()
的原因是因为您在脚本末尾使用showMailingPopUp();
调用它。
onClick
功能应遵循以下格式:
<button onclick="showMailingPopUp()">Click me to show mailing popup</button>
答案 1 :(得分:0)
showmailingPopUp
使用onclick的原因是因为它无法找到它。它应该在脚本标记之前定义,或者在与事件监听器的JavaScript绑定中定义。
这是一个使用JavaScript的解决方案(向元素添加事件监听器,以便函数正确调用):
function showMailingPopUp() {
require(
["mojo/signup-forms/Loader"],
function(L) {
L.start({"baseUrl":"mc.us4.list-manage.com","uuid":"91363270e58a57510d5d933c6","lid":"b2d7dd4078"})
}
);
document.cookie = 'MCPopupClosed=;path=/;expires=Thu, 01 Jan 1970 00:00:00 UTC;';
document.cookie = 'MCPopupSubscribed=;path=/;expires=Thu, 01 Jan 1970 00:00:00 UTC;';
}
document.getElementById("element").addEventListener("click", function(){
showMailingPopUp();
})