初衷:不少人在初學前端的時候都會問,「如何入門前端?」
同爲在前端學習道路上,奮力追趕的一員,本人對於目前網絡上所能看到的 「入門級」 的教材並不太滿意。學習一門新知識,實例是尤爲重要的。在這裏本人整理了目前頁面上常見功能實現的具體實例。願能爲你們提供一些幫助。
但願可以與你們互相分享,共同進步。html
效果預覽
前端
<!-- 觸發按鈕 --> <button id="triggerBtn">模態框</button> <!-- 模態框 --> <div id="myModal" class="modal"> <div class="modal-content"> <div class="modal-header"> <h2>頭部</h2> <span id="closeBtn" class="close">×</span> </div> <div class="modal-body"> <p>這是一個模態框!</p> <p>喜歡就點個贊吧!</p> </div> <div class="modal-footer"> <h3>尾部</h3> </div> </div> </div>
模態框樣式git
/*模態框*/ .modal { display: none; /* 默認隱藏 */ position: fixed; /* 根據瀏覽器定位 */ z-index: 1; /* 放在頂部 */ left: 0; top: 0; width: 100%; /* 全寬 */ height: 100%; /* 全高 */ overflow: auto; /* 容許滾動 */ background-color: rgba(0,0,0,0.4); /* 背景色 */ }
模態框內容樣式github
/*模態框內容*/ .modal-content { display: flex; /*採用flexbox佈局*/ flex-direction: column; /*垂直排列*/ position: relative; background-color: #fefefe; margin: 15% auto; /*距頂部15% 水平居中*/ padding: 20px; border: 1px solid #888; width: 80%; animation: topDown 0.4s; /*自定義動畫,從模態框內容上到下出現*/ } @keyframes topDown { from {top: -300px; opacity: 0} to {top: 0; opacity: 1} } /*模態框頭部*/ .modal-header { display: flex; /*採用flexbox佈局*/ flex-direction: row; /*水平佈局*/ align-items: center; /*內容垂直居中*/ justify-content: space-between; } /*關閉X 樣式*/ .close { color: #aaa; float: right; font-size: 28px; font-weight: bold; } .close:hover { color: black; text-decoration: none; cursor: pointer; }
擴展閱讀: CSS3 animation 屬性web
隔離全局瀏覽器
(function() { })();
把JS代碼放到一個單獨的自調用匿名函數中。網絡
擴展閱讀:深刻理解(function() {})();ide
創建模態框對象函數
/*創建模態框對象*/ var modalBox = {}; /*獲取模態框*/ modalBox.modal = document.getElementById("myModal"); /*得到trigger按鈕*/ modalBox.triggerBtn = document.getElementById("triggerBtn"); /*得到關閉按鈕*/ modalBox.closeBtn = document.getElementById("closeBtn"); /*模態框顯示*/ modalBox.show = function() { console.log(this.modal); this.modal.style.display = "block"; } /*模態框關閉*/ modalBox.close = function() { this.modal.style.display = "none"; } /*當用戶點擊模態框內容以外的區域,模態框也會關閉*/ modalBox.outsideClick = function() { var modal = this.modal; window.onclick = function(event) { if(event.target == modal) { modal.style.display = "none"; } } } /*模態框初始化*/ modalBox.init = function() { var that = this; this.triggerBtn.onclick = function() { that.show(); } this.closeBtn.onclick = function() { that.close(); } this.outsideClick(); }
調用模態框
modalBox.init();
好啦,如今咱們已經寫完。
怎麼樣,是否是很簡單。趕快打開瀏覽器看看吧!
在這裏,只是給你們提供一種思路,參考。
具體的實現,每一個人均可以有不一樣的方法。
請你們趕快發揮想象,把你最想實現的功能,在電腦敲出來吧!