·

Vue - Go to anchor smoothly without changing url

Published at 2024-04-30 16:52:12Viewed 645 times
Please reprint with source link

In Vue.js, we can define an anchor by RouterLink or HTML tag <a> , while in Nuxt.js, we can additionally use NuxtLink which is similar to RouterLink .

<a href="#content">My Link</a>
<RouterLink to="#content">My Link</RouterLink>
<NuxtLink to="#content">My Link</NuxtLink>

However, on loading a page, the above ways would change the url which makes it slow to go to #content . To speed up anchor link and not change the url, there are two ways.

The first way is to use pure javascript method scrollIntoView to scroll to the specified div id, which is fast and would not change url.

function scrollSmoothTo(Id) {
  var node = document.getElementById(Id);
  node.scrollIntoView({

    behavior: 'smooth'
  });
}

<a @click="scrollSmoothTo('content')">
  Scroll to userdiv
</a>
<RouterLink @click="scrollSmoothTo('content')">
  Scroll to userdiv
</RouterLink>
<NuxtLink @click="scrollSmoothTo('content')">
  Scroll to userdiv
</NuxtLink>
<div id="content">
   example
</div>

Note that adding behavior: 'smooth' can add animation when scrolling. However, using this way, a could not have attribute href, i.e.

<a href="#content" @click="scrollSmoothTo('content')" />
<RouterLink  href="#content" @click="scrollSmoothTo('content')" />
<NuxtLink href="#content" @click="scrollSmoothTo('content')" />

would not perform the click event. This is not SEO friendly.

Therefore, the second way is the improvement of the first that is SEO friendly, which can smoothly go to #content without changing the url. We should use Vue's event modifiers for v-on.

<a href="#content" @click.native.prevent="scrollSmoothTo('content')">
  Scroll to userdiv
</a>
<div id="content">
   example
</div>

This way, we could prevent the default href action when clicking and perform the scrollSmoothTo function. However, It seems that using RouterLink or NuxtLink in the same way could not prevent the default action, i.e.

<RouterLink href="#content" @click.native.prevent="scrollSmoothTo('content')">
  Scroll to userdiv
</RouterLink>
<NuxtLink href="#content" @click.native.prevent="scrollSmoothTo('content')">
  Scroll to userdiv
</NuxtLink>

not work.

0 人喜欢

Comments

There is no comment, let's add the first one.

弦圈热门内容

一定要很聪明才能学数学专业吗?

知乎提问:我高考数学120+,也喜欢并热爱数学,但报考志愿时父母以女孩子脑子转的不如男孩子拒绝让我报考专业,于是大学期间自学数学专业课准备考研跨考数学,近期很疑惑,一定是要足够聪明的人才能学好数学吗我的回答(已删):并不需要很聪明才能学数学,而且大众所谓的聪明一般是指反应很快,就比如说对数学的理解比其它人要快一些。但是这能力其实跟真正的那种科研能力、创造力没啥关系,参考今年fields奖得主Hub,他考试成绩一塌糊涂。在我看来,学数学更重要的是坚持、毅力、冷静,你得沉得下心来学,一次学不懂反复学,这样才能把数学学好。发布于 2022-10-23 13:09

奥数热对中国数学是利还是弊?

知乎提问:奥数热对中国数学是利还是弊?我的回答:这个问题对于以不同目的学数学的人,自然会有不同的答案。对于那些以升学为目的、普通家庭的学生,或许是多一条改变命运的路,不至于只有中考、高考一条路。不过由于奥数热,这条路的内卷程度甚至比高考还厉害,因为名额很少,但却这么多人在争。而普通家庭的学生没有什么教育资源的优势,加入这条道路不仅要花费大量时间精力以及金钱,还因为无法兼顾正常课导致无法中考或高考。因此整体上而言对于以升学为目的、普通家庭的学生,我认为是弊大于利,绝大多数学生只会成为“炮灰”。对于那些不以升学为目的,热爱数学的普通家庭学生,这也不见得是好事。因为热爱数学的学生,不一定对奥数感兴趣,加之奥数本身所倡导的竞技性,说真的压根不能算是正常的数学,只能说是把体育竞技带进了数学(奥数全称奥林匹克数学竞赛),只会让真正热爱数学的人心生厌恶,奥数热所带来的社会风气,哪怕是以升学为目的、热爱数学的普通家庭学生,奥数热也只会让真正想学数学的人无暇关注数学本身,从而分神在无意义的数学竞技中。数学研究不是竞技,那是探索未知,两者完全不在一个频道上。因此,整体上说奥数热对热爱数学的普通家庭学生,我 ...

一本数学教材严谨和通俗哪个更重要?

知乎提问:一本数学教材严谨和通俗哪个更重要??我的回答:在我看来这两样都同等重要,没有哪个更重要。数学教材既然是关于数学的教材,才肯定是需要严谨才不会误导初学者,同时如果写教材的作者是一个合格的数学工作者,那么他的文笔大概率也是十分严谨的。而教材不同于学术文献,教材是专门写来给初学者或者别的领域专家学习的,为了更好理解,那必然需要写得通俗。所以有这样一个等价关系:数学教材 $=$ 数学 $+$ 教材 $\cong$ 严谨 $+$ 通俗当然上面的描述是基于理想情况,现实中不严谨的数学教材,严谨但不通俗的数学教材,以及既不严谨也不通俗的数学教材,都有。其中既不严谨也不通俗的数学教材,可以说非国内的数分高代教材莫属了,内容东平西凑,国内外教材都抄一遍然后参考文献也不给人家。

如何在学习数学的过程中建立一个直观的认识?

知乎提问:请教大家一个问题:我在理解数学公式的时候,全部都是从几何意义入手,而且这些几何意义能够反推出公式,(比如y=kx+b和一条直线 能够建立直觉上的认知)。但是遇到一些比较复杂的公式,没有办法由几何意义建立直觉上的认知的时候(比如说正态分布的函数,没有办法知道正态分布的函数每部分对几何的影响),就发现自己没有办法理解。想请问up,对于后者应该怎么去理解?有没有什么其他的思维去理解记忆,建立直观上的认识。我的回答:我的思维方式与你完全相反,我是不喜欢直观的东西,相反我喜欢抽象的东西,越抽象越好。我理解数学也从来不是从几何直观出发,而是直接从抽象角度出发,哪怕一样东西抽象到完全没有任何直观可言,也不影响我理解它。我个人觉得题主形成这种过度依赖几何直观理解数学的思维,可能跟没有好好学习代数有关。相较于几何,代数本身更加抽象,强调推理和计算。你需要多学习代数相关的数学,培养自己的代数思维,这样或许有助于你理解一些抽象的数学对象。有些数学概念本身就是通过直观就能理解的,或者说有些概念本身就是抽象的,因此需要针对不同的概念用不同的思维去理解。以上我说的更多的是方法论,并没有非常具体做法,主要 ...

弦圈1月2日更新日志

今天收到用户的反馈 无法从消息中心的回复与评论中进入帖子后,我马上对消息中心回复与评论部分功能,进行了优化升级。目前无论是回复和评论,都会带上原文链接。这里还有一个坑我暂时没想到解决办法,就是打开原文链接,页面会直接滑到相应的回复或者评论,就跟b站一样。然后除了原文链接,我还加上了快捷回复、快捷点赞、快捷踩,方便用户看到回复或评论后马上进行操作。这里我没有采用知乎的那种评论对话框模式。接着我将加载更多信息的方式,从点击按钮“更多信息”,改成了分页模式。因为如此大量的评论以及回复,就是一个信息无底洞,怎么加载都加载不完,而且用户也很难控制自己看哪些评论或回复。因此在这种情况下,我还是觉得分页的体验会更好,b站使用的是无限滚动,这在信息比较少的时候确实不错,但却非常不利于信息的管理,同时也会浪费那些需要经常查看信息并回复的用户的时间(可能是b站想强行增加用户停留时间吧😅)。话说私信功能其实目前仍不支持,主要是我担心socket.io所可能导致的性能问题。或者放弃实时性,改用轮询或者长连接,因为一般而言除了聊天软件,私信功能似乎不需要什么实时性🙃。之后弦圈活跃度高的时候再慢慢考虑吧。

无法从消息中心的回复与评论中进入帖子

比如说有人回复了自己的评论,自己想再进行回复,但是从消息中心中不能回到那个帖子里面

弦圈新年2025年1月1日更新日志,祝大家新年快乐!

今天在收到用户的反馈 动画效果和弹窗不自动关闭 后,我马上停下自己手头上的工作将问题修复好。首先,词条相关内容,以及搜索结果的动画,全部去掉“鼠标移动到上面后向上运动”的动画,因为似乎无论用啥办法也无法避免字体的抖动,不同方法只是抖动程度不同。我也懒得去搜寻了,直接换了个新动画。然后我修复了变更圈子的漏洞,如果目标变更圈子还是原来的圈子,则会弹出提示,不会做多余的变更。弄完这些以后,我顺手增加了“圈内搜索”功能,然后还在几处地方修改了鼠标的样式。最近这两天我一直想给弦圈弄个好的搜索引擎,用于站内搜索。目前可用的技术中人气最高的两个是Solr、Elastic search。这两个我都尝试了,最后都无功而返,太复杂了,不明所以的报错以及网上极少的资料,实在不好弄。接着我又尝试了MySQL自带的full text search,结果是中文搜索结果不好。而购买腾讯云现成的ES集群又很贵(一个月上千块),因此最后我不得不暂时放弃这个计划。最后祝大家新年快乐,新的一年里paper多多!也祝大家在新的一年里好好学习,天天向上!😇

拓扑学入门教材Topology Without Tears😭无泪拓扑学

这是本2019年出版的拓扑学教材,目前已被翻译成全国语言,可见其火爆,名字更是让我哭笑不得😂。可惜当年的我并不知道有这本书的存在,也是今天搜索后才得知原来有这本书,看第一眼就被这本书的内容所吸引了,确实是一本很好的拓扑学入门教材。比起我之前推荐的那些要好多了,Dugundji拓扑学基础教材Topology这本教材虽然也能入门,但内容过于庞杂,其实只适合当词典查,不太适合小白;而代数拓扑那两本教材更不用说,压根重点就不在一般拓扑学。我当初并没有系统性的学习过拓扑学,本身就对一般拓扑学这方面的教材了解不多。而且2019年的时候,我应该在读高二吧,那时候的我都在看Loring W Tu微分几何经典入门教材:An Introduction to Manifolds和Jürgen Jost黎曼几何与几何分析教材:Riemannian Geometry and Geometric Analysis了,因此对于专门找本一般拓扑学教材学习这方面已经没啥需求了,从而完美错过这本书😢。可能是因为拓扑学我并没有感受到多少压力,虽然很喜欢Topology Without Tears这个名字,但并没有多少共鸣。 ...

可以尝试细分弦圈的部分

例如分析学可以再分支成微积分,实分析,复分析等等这样。不然的话例如一些比较基础简单的文章可能会格格不入,并且初学者可能是只学习简单的内容,但是圈子里都是高难度的。或者类似地划分内容和难度??

中国最经典的60首现代诗,一生至少要读一次!

现代诗也叫"白话诗",最早可追源到清末,是诗歌的一种,与古典诗歌相比而言,虽都为感于物而作,但一般不拘格式和韵律。现代诗形式自由,意涵丰富,意象经营重于修辞运用,完全突破了古诗"温柔敦厚,哀而不怨"的特点,更加强调自由开放和直率陈述与进行"可感与不可感之间"的沟通。中国代表人物:徐志摩、北岛、顾城、海子等徐志摩(1897—1931年)徐志摩,现代诗人、散文家。新月派代表诗人,新月诗社成员。在剑桥两年深受西方教育的熏陶及欧美浪漫主义和唯美派诗人的影响,奠定其浪漫主义诗风。代表作品有《再别康桥》《翡冷翠的一夜》。1. 再别康桥轻轻的我走了,正如我轻轻的来;我轻轻的招手,作别西天的云彩。那河畔的金柳,是夕阳中的新娘;波光里的艳影,在我的心头荡漾。软泥上的青荇,油油的在水底招摇;在康桥的柔波里,我甘心做一条水草!那榆荫下的一潭,不是清泉,是天上虹 揉碎在浮藻间,沉淀着彩虹似的梦。寻梦?撑一支长蒿,向青草更青处漫溯,满载一船星辉,在星辉斑斓里放歌。但我不能放歌,悄悄是别离的笙箫;夏虫也为我沉默,沉默是今晚的康桥!悄悄的我走了,正如我悄悄的来;我挥一挥衣袖,不带走一片云彩。2. 我不知道风是在哪一 ...

动画效果

以 https://www.manitori.xyz/circles/9/encyclopedia/27 &nbsp;这个界面为示例,相关内容哪里,鼠标上下移动的时候会出现动画,但是动画效果不太好,字体上下浮动给人视觉压力较大,字体抖动严重

弹窗不自动关闭

提交以后该界面不会自动关闭,应再提交以后自动关闭该弹窗

【荐读】十首最美现代诗,一生至少读一次

如果席慕容 今生今世 永不再将你想起除了除了在有些个因落泪而湿润的夜里 如果如果你愿意   可笑时间哪有什么如果,可是没有如果,只是没有如果。爱情叶挺王 有一天路标迁了希望你能从容有一天桥墩断了希望你能渡越有一天栋梁倒了希望你能坚强有一天期待蔫了希望你能理解   是期待么?可能只是不甘吧,用最深情且最无奈的语气。远和近顾城 你一会看我一会看云我觉得你看我时很远你看云时很近   距离,什么都不用说,什么都不用表达。断章卞之琳 你站在桥上看风景,看风景人在楼上看你。明月装饰了你的窗子,你装饰了别人的梦。   含蓄隽永,优美如画,别有一番滋味在心头。独语覃子豪 我向你倾吐思念你如石像沉默不应如果沉默是你的悲抑你知道这悲抑最伤我心   明快晓畅,冷峻凄怆,思念繁复,用情至深。一代人顾城 黑夜给了我黑色的眼睛我却用它寻找光明 短短两句诗,诠释了一代人的不屈精神。面朝大海,春暖花开海子 陌生人,我也为你祝福愿你有一个灿烂的前程愿你有情人终成眷属愿你在尘世获得幸福我只愿面朝大海,春暖花开   面朝大海,春暖花开。只这一句,就足以让这位流星诗人得以永恒。乡愁余光中 后来,乡愁是一方矮矮的坟墓我在外头 ...

潘禺:谷歌量子计算芯片给了国内产业界紧迫感

【文/观察者网专栏作者 潘禺】12月10日,谷歌重磅推出量子计算芯片“Willow”,在公关宣传攻势下,马斯克送上了“Wow”,奥特曼也发来了贺电。Willow是一款拥有105个物理量子比特的量子芯片,亮点在于其惊人的计算速度和错误校正能力。据报道,Willow能在不到5分钟的时间内完成一个标准计算任务,而这个任务如果交给全球最快的超级计算机,可能需要超过10-25年,这个数字甚至超过了宇宙的年龄。Willow的另一个成就是其指数级减少错误率的能力。随着量子比特数量的增加,错误率通常会指数增长,但Willow通过先进的量子纠错技术,实现了错误率的指数级降低。每当晶格从3x3增加到5x5,再到7x7时,编码错误率就会以2.14的倍率降低。这种对逻辑错误的潜在抑制为运行有纠错的大规模量子算法奠定了基础。Google Quantum AI团队的工作环境权威专家的反应量子计算的教主和旗手,美国计算机科学家Scott Joel Aaronson在他的博客也做了一些点评,尽管整体上比较积极乐观,但话里话外还是有一些玄机。比如,Aaronson要读者明确,进步大体上符合多数人的预期:对于过去五年一直 ...

谷歌量子计算突破引发争议,国产科技潜力不可小觑

2024年12月9日,谷歌宣布推出新一代量子计算芯片Willow,引发了网友们的热烈讨论。在很多评论中,有人认为谷歌的技术遥遥领先,激起了外界的关注和质疑。量子计算技术作为未来科技发展的重要前沿,始终是科技界讨论的热点。一般来说,量子计算机的表现取决于其拥有的量子比特(qubits)数量及其稳定性。按照目前的研究,数量越多,出错的几率也越高。然而,谷歌的研究人员在此次发布会上自信地表示,Willow芯片通过创新的设计,成功大幅减少了错误,扭转了这一不利局面。其重要的技术突破包括量子纠错的新方法,和在更大规模的量子比特基础上实现指数级的计算效率提升。根据谷歌的说法,Willow芯片在不足五分钟内就完成了一项“标准基准计算”,而现有最快的超级计算机需要耗费一个近乎无法想象的时间——“10的25次方”年才能完成这一任务,这个数字远超宇宙的年龄。显然,在威力如此巨大的技术背后,量子计算机的实际应用也在不断拓宽,包括药物研发、聚变能研究和电池设计等领域,潜力无限。不过,谷歌的这一宣称也受到了一些业内人士的怀疑,认为其技术创新或许只是个噱头。电动汽车巨头、科技创新推动者马斯克也对此发表了意见,建议 ...