国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

html - 請(qǐng)問(wèn)用Nodejs怎么制作導(dǎo)航點(diǎn)擊變色功能?

瀏覽:130日期:2023-10-05 08:20:31

問(wèn)題描述

最近在學(xué)習(xí)nodejs制作一個(gè)簡(jiǎn)單的個(gè)人網(wǎng)站,模版用的ejs,但是有一個(gè)疑問(wèn),就是頁(yè)面公用的導(dǎo)航欄,怎么實(shí)現(xiàn)點(diǎn)擊跳轉(zhuǎn)后當(dāng)前欄目變色呢?請(qǐng)求各位老司機(jī)提供一下思路,可能是新手,還沒(méi)轉(zhuǎn)換過(guò)來(lái)思維,麻煩解答。謝謝各位!

問(wèn)題解答

回答1:

例如我用的EJS模版:

<a href='http://www.intensediesel.com/index' /index') %>'>最新折扣</span>

在class中調(diào)用方法,傳入鏈接地址,目的是給當(dāng)前class加上自定義的選中效果,例如active

app.js中:

var common = require(’./common’);app.use(common.activeUrl);

common.js中:

exports.activeUrl = function (req, res, next) { res.locals.activeNav = function (nav) { let result = ’’; let _path = req.path; if (nav == _path) { result = ’main-active’; } else { result = ’’; } return result; }; next();};回答2:

可以用css類解決,在css里創(chuàng)建current類

.current{ background-color:#0000FF; color:#FFFFFF}

點(diǎn)擊跳轉(zhuǎn)后給要變色的欄目設(shè)置類名為current

回答3:

提供一個(gè)思路哈。你可以給用用導(dǎo)航欄的初始化函數(shù)傳遞一個(gè)參數(shù),讓這個(gè)參數(shù)去區(qū)分其他菜單。給那個(gè)菜單實(shí)現(xiàn)變色

nav.init(curNavName){ //對(duì)name或者id或者自定義屬性值為curNavName的菜單進(jìn)行變色操作。}//頁(yè)面發(fā)生跳轉(zhuǎn)的時(shí)候,你傳遞相關(guān)參數(shù)給nav.init()函數(shù)回答4:

我也想到傳參來(lái)設(shè)置CSS,不過(guò)從沒(méi)看見(jiàn)過(guò)那個(gè)類似功能的網(wǎng)站URL上是帶這個(gè)參數(shù)的。

或許可以用COOKIE,點(diǎn)擊某個(gè)導(dǎo)航連接的時(shí)候設(shè)置COOKIE的值為該欄目,導(dǎo)航欄當(dāng)前欄目鏈接高亮根據(jù)這個(gè)值來(lái)顯示。

感覺(jué)還是不太優(yōu)雅雖然能解決,坐等其它方法。

回答5:

這叫面包屑功能,antd有類似組件 https://ant.design/components...

標(biāo)簽: HTML
相關(guān)文章:
主站蜘蛛池模板: 金华市| 仁怀市| 鄂伦春自治旗| 南郑县| 卢湾区| 五峰| 吉水县| 图们市| 双峰县| 册亨县| 陇西县| 西城区| 新河县| 涡阳县| 营山县| 汉寿县| 永年县| 嘉峪关市| 克山县| 中西区| 井研县| 东山县| 甘洛县| 鄂托克旗| 留坝县| 灵寿县| 永济市| 鄂托克前旗| 吐鲁番市| 红安县| 海林市| 连城县| 东城区| 綦江县| 利辛县| 高州市| 台东市| 武鸣县| 赣榆县| 奇台县| 玉林市|