文件

Instagram 仿製

完全以 JS 與 PDExtension DOM 輔助函式產生的仿 Instagram 靜態網頁應用:動態、限時動態、探索、私訊、通知、個人頁與貼文彈窗。

概要

項目 內容
製作日期 2022-10-12
分類 App 與平台範例
HTML 檔案 index.html
原始碼 target/20221012

即時預覽

在新分頁開啟範例

頁面區塊

區塊 說明
側邊/底部導覽 由 initNav() 產生:Logo(image/logo.svg)、以 ?pg= 切換的首頁/探索/訊息、通知與建立切換鈕、個人檔案連結、更多按鈕,以及行動版精簡頂列(div#nav)。
首頁動態(預設) showHomePage():限時動態列(新/已看外框)、貼文卡(作者、可滑動多圖輪播與指示點及左右鈕、讚/留言/分享/收藏與留言輸入),以及側欄帳號切換、推薦用戶與頁尾連結。
探索(?pg=search) showSearch():圖片格線,每格顯示讚數與留言數;點擊開啟貼文彈窗(showPopPost)。
訊息(?pg=message) showMessage():對話列表與聊天畫面,含自動增高 textarea 與傳送/表情/圖片/愛心按鈕。
通知面板 showNotify():於 #nav-notify 依今天/昨天分組顯示按讚與留言通知。
個人頁(?pg=user&uid=) showUser():頭像、名稱、粉絲/追蹤數、簡介、連結、精選動態(新焦點動態)與貼文/我的珍藏/已標注分頁的貼文格線。
貼文頁/彈窗 showPost(pid) 完整貼文頁(?pg=post&pid=)、showPopPost() 彈窗 #pop、showPopStory() 全螢幕限時動態檢視 #pop-story,含上一則/下一則與回覆輸入。

互動行為

相依資源

名稱 版本 來源
Font Awesome Free 6.5.2 https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6.5.2/css/all.min.css
PDExtension.js (local; prototype extensions on Array / Object / Number / URL / String / HTMLElement, e.g. "tag#id.class"._(), _click, _history) - js/PDExtension.js
js/index.js (local app code with sample data) - js/index.js

樣式

項目 內容
SCSS 入口 sass/index.scss
輸出 CSS css/index.css
Partials _nav.scss, _home.scss, _homeStory.scss, _homeInfo.scss, _postListTop.scss, _postListCenter.scss, _postListBottom.scss, _postListRow.scss, _search.scss, _message.scss, _post.scss, _user.scss, _userTop.scss, _userList.scss, _pop.scss

入口在固定滿版 body 內引入 nav / home / search / message / post / user / pop;home 與 user 再引入限時動態、資訊、貼文列表與使用者子 partial。body::after 顯示「Pardn Ltd」標籤。

cd target/20221012
npx sass sass/index.scss css/index.css --no-source-map || exit 1

使用技巧

外部資源

相關頁面

EN