這篇文章將為大家詳細(xì)講解有關(guān)web開(kāi)發(fā)中頁(yè)面內(nèi)錨點(diǎn)定位及跳轉(zhuǎn)方法有哪些,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
我們提供的服務(wù)有:網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、江南ssl等。為1000+企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢(xún)和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的江南網(wǎng)站制作公司
最簡(jiǎn)單的方法是錨點(diǎn)用標(biāo)簽,在href屬性中寫(xiě)入DIV的id。如下:
to div1 to div2 to div3
div1div2div3
這種方法的缺點(diǎn)是點(diǎn)擊錨點(diǎn)之后,瀏覽器的URL會(huì)發(fā)生變化,如果刷新可能會(huì)出現(xiàn)問(wèn)題?!?/p>
第二種方式是在js事件中通過(guò)window.location.hash="divId"跳轉(zhuǎn),但地址也會(huì)發(fā)生變化,感覺(jué)跟第一種方法沒(méi)區(qū)別,甚至更麻煩。
第三種方法是用animate屬性,當(dāng)點(diǎn)擊錨點(diǎn)后,頁(yè)面滾動(dòng)到相應(yīng)的DIV。接著上面的代碼,具體添加如下代碼:
注意:運(yùn)行上面的腳本的之前,先將為錨點(diǎn)增加相應(yīng)的id,同時(shí)去掉href屬性?!?/p>
$("html, body")可以替換為響應(yīng)的div,如果不起作用,試著給該div增加overflow:scroll屬性。
另外,腳本可以進(jìn)一步優(yōu)化,自己來(lái)試試
這樣做的好處是:URL地址不會(huì)變,同時(shí)點(diǎn)擊錨點(diǎn)時(shí)會(huì)自動(dòng)響應(yīng)scroll事件,不需要重新綁定。
缺點(diǎn)是:如果頁(yè)面復(fù)雜的話,偏移值可能會(huì)發(fā)生變化需要算法輔助。
第四種方法是用js的srollIntoView方法,直接用:
document.getElementById("divId").scrollIntoView();
這種方法的好處,是URL不會(huì)變,同時(shí)能夠響應(yīng)相應(yīng)的scroll事件,不需要算法什么的。
關(guān)于“web開(kāi)發(fā)中頁(yè)面內(nèi)錨點(diǎn)定位及跳轉(zhuǎn)方法有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。