如何實現(xiàn)餓了么點餐應用左側(cè)菜單效果?

如何實現(xiàn)餓了么點餐應用左側(cè)菜單效果?

打造流暢的餓了么風格左側(cè)菜單

本文將指導您如何創(chuàng)建一個類似餓了么點餐應用的左側(cè)菜單,兼顧美觀和用戶體驗。該菜單是一個可滾動的列表,每個菜單項對應右側(cè)內(nèi)容區(qū)域,點擊菜單項后,右側(cè)內(nèi)容會平滑滾動到相應位置。

我們將使用htmlcssJavaScript來實現(xiàn)此效果。HTML構(gòu)建菜單結(jié)構(gòu),CSS控制樣式和布局,JavaScript處理點擊事件和滾動效果。

HTML結(jié)構(gòu):

<div class="menu">   <ul>     <li>菜單項1</li>     <li>菜單項2</li>     <li>菜單項3</li>   </ul> </div>

CSS樣式:

.menu {   width: 200px;   height: 100vh;   overflow-y: auto;   background-color: #f0f0f0; }  .menu ul {   list-style: none;   padding: 0; }  .menu li {   padding: 10px;   border-bottom: 1px solid #e0e0e0;   cursor: pointer; }  .menu li:hover {   background-color: #e0e0e0; }

JavaScript交互:

document.querySelectorAll('.menu li').forEach((item, index) => {   item.addEventListener('click', () => {     const content = document.getElementById('content'); //  假設(shè)右側(cè)內(nèi)容區(qū)域ID為'content'     const targetSection = content.children[index];     targetSection.scrollIntoView({ behavior: 'smooth' });   }); });

以上代碼實現(xiàn)了基本的左側(cè)菜單效果。 為了提升用戶體驗,可以考慮在右側(cè)內(nèi)容滾動時,高亮顯示對應的左側(cè)菜單項,從而增強用戶位置感知。 這需要進一步完善JavaScript代碼,根據(jù)滾動位置動態(tài)更新菜單項的樣式。

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊13 分享