2017-12-11 11 views
-4

私はこの機能を持って、ポップアップウィンドウonClickを表示します。ただし、onClickとonLoadの両方で動作しています。もちろん、これはエンドユーザがページを読み込むたびにウィンドウを終了させなければならないという煩わしさがあります。誰かがこのonClickだけを作る方法についてアイデアを持っていますか?終了時に関数を削除すると、スクリプトが完全に停止します。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;'; 
} 

showMailingPopUp(); 
+3

たぶん 'showMailingPopUpを(削除);最後に'コール? – cdhowie

+2

'showMailingPopUp();'を削除しますか?これは深刻な質問ですか、それともトロールのポストですか? – ProEvilz

+2

何か試しましたか?あなたは 'showMailingPopUp()'が関数の最後に何をするのか理解していますか? – zzzzBov

答えて

0

それはそれを見つけることができないためである。

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(); 
}) 

jsFiddle

1

あなたのスクリプトの末尾にshowMailingPopUp();を使用して、それを呼び出しているので、あなたの関数がonLoad()と呼ばれている理由があります。理由showmailingPopUpはonclickのに動作していない

<button onclick="showMailingPopUp()">Click me to show mailing popup</button>

関連する問題