2014-09-18 60 views
1

使用magnificPopup將警報重新分解爲模式彈出窗口。不確定我是否正確調用magnificPopup。這是正確的語法嗎?謝謝你的幫助!將警報轉換爲magnificPopup模式

代碼:

<script> 
    $(document).ready(function() { 
     $('.readMore').each(function() { 
      if (isDivClipped(this)) { 
       $(this).wrap("<div class='readmorewrapper'></div>"); 
       $(this).after("<a href='#' onclick='showReadMore(this);'>Read More...</a>"); 
      } 
     }); 


    }); 
    function showReadMore(el) { 
     var modalContent = ($(el).closest('.readmorewrapper').find('.readMore').text()); 
     $('modalContent').magnificPopup; 
    } 
    function isDivClipped(el) { 
     return true; 
    } 
</script> 
+0

爲什麼'isDivClipped()'總是返回TRUE;? – 2014-09-18 19:17:58

+0

我認爲問題是'onclick ='showReadMore(this)'。在這種情況下,'this'不再指'.readMore'元素。 – 2014-09-18 19:19:49

+1

我在代碼中看到兩個錯誤, - .magnificPopup是一個函數,必須像這樣調用:.magnificPopup(); - 您將文本保存到var modalContent中,然後嘗試將該文本用作$()的選擇器...我認爲這是一個錯誤。 – 2014-09-18 19:24:18

回答

1

所有相關文檔:http://dimsemenov.com/plugins/magnific-popup/

工作實例:

<a class="popup-modal" href="#test-modal">Open modal</a> 

<div id="test-modal" class="mfp-hide white-popup-block"> 
    <h1>Modal dialog</h1> 
    <p>Some block of text here</p> 
    <p><a class="popup-modal-dismiss" href="#">Dismiss</a></p> 
</div> 


$(function() { 
    $('.popup-modal').magnificPopup({ 
     type: 'inline', 
     modal: true 
    }); 
    $(document).on('click', '.popup-modal-dismiss', function (e) { 
     e.preventDefault(); 
     $.magnificPopup.close(); 
    }); 
}); 
相關問題