2017-01-21 82 views
0

我正在寫電子書項目中的一些js代碼。問題出在一個模式中,用來顯示像其他頁面的彈出式引用。 這是我的項目致力於關閉模式的一部分。無法使用Javascript關閉模式

​​

而這裏(更好)顯示模式運行但無法關閉的所有代碼(js + html + css)。 https://jsfiddle.net/emanuele_tinari/gkL5sh3x/ 通過js構建的模態運行得非常好,但不幸的是,關閉按鈕似乎沒有。 謝謝。

+0

,你應該尋找第一個地方是在你的開發者控制檯。 'span是未定義的'。這是調試應用程序的第一步。 –

+0

在添加點擊功能之前,您是否已檢查過'close按鈕是否在dom中可用?它的動態構建 – mtizziani

回答

0

您的代碼會嘗試查找close範圍以在頁面加載時立即附加偵聽器。您目前尚未創建模態,因此失敗。

如果您在您的問題中刪除了大量代碼,並立即將其粘貼到創建模式的函數的末尾,那麼關閉按鈕將起作用。

+0

現在沒關係。我想要的莫代爾打開和關閉。不幸的是,另一個問題似乎是:如果我點擊2次,3次或更多次鏈接打開模式,在模式中,我發現文本重複2次,3次或更多次(取決於我點擊鏈接的次數)。 這裏的jsfiddle鏈接:https://jsfiddle.net/emanuele_tinari/gkL5sh3x/ –

0

這將做的工作:

document.onclick = function(event) { 
    var el = event.target; 
    if (el.className == "close") { 
    // Riferimento al Modal 
    var modal = document.getElementById('modalversetti'); 

     modal.style.display = "none"; 
    } 
}; 

,但你有更多的問題與您的代碼...

+0

你是什麼意思,cit:「你的代碼有更多的問題......」? –

+0

你能告訴我什麼,關於你,是什麼問題以及如何解決?有一些改進適用於它,關於你?實際上,在我的電子書中關閉模式似乎沒有去。在JSfiddle或在w3schools.com上的Tryit編輯器去。我不明白... –