suchen

Heim  >  Fragen und Antworten  >  Hauptteil

javascript - Gibt es in vue.js eine schnellere Methode, um die aktuelle Schnittstelle zu einem bestimmten Teil zu scrollen?

Eine gewöhnliche HTML-Seite wird beispielsweise häufig verwendet, um zum Anfang zurückzukehren. Sie kann das href-Attribut des a-Tags auf eine bestimmte ID setzen und dann beim Klicken mit der Bildlaufleiste zu diesem Teil scrollen (natürlich können Sie dies auch direkt festlegen). die Höhe der Bildlaufleiste).

Meine aktuelle Anforderung besteht darin, auf verschiedene Schaltflächen in derselben Vue-Komponente zu klicken, um die Bildlaufleiste zum entsprechenden Teil zu scrollen (der Bildlaufeffekt ist optional). Wenn Sie die oben genannte Methode direkt verwenden, wird ein Seitensprung ausgelöst. Wenn Sie die Höhe der Bildlaufleiste direkt festlegen, müssen Sie die Positionen einzeln ermitteln, was nicht so einfach ist wie beim vorherigen.

Bitte geben Sie mir einen Rat, haben Sie eine bessere Idee, um diese Anforderung zu realisieren?

为情所困为情所困2773 Tage vor634

Antworte allen(8)Ich werde antworten

  • phpcn_u1582

    phpcn_u15822017-05-18 10:47:35

    Element.scrollIntoView()

    这是 JS 的一个原生 api,调用后,浏览器会滚动至目标元素的位置。

    https://developer.mozilla.org...

    Antwort
    0
  • PHP中文网

    PHP中文网2017-05-18 10:47:35

    如果用不了锚点,只能获取每个部分的滚动条位置了。

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-18 10:47:35

    那只能用js了,如下面一样,在事件中获取目标元素距离页面顶部的距离,然后控制滚动轴:

    $(window).scrollTop( $("#caaa").offset().top )

    Antwort
    0
  • 阿神

    阿神2017-05-18 10:47:35

    粗暴的来看,肯定是锚点这个方法暴力咯。

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-18 10:47:35

    找个原生js插件引入

    Antwort
    0
  • 阿神

    阿神2017-05-18 10:47:35

    同问!我也不清楚

    Antwort
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-18 10:47:35

    https://huahua0406.github.io/...

    下面有个左右对应滚动的不知道满足你的要求吗

    Antwort
    0
  • 大家讲道理

    大家讲道理2017-05-18 10:47:35

    vue-router2

    router有模拟锚点的功能

    Antwort
    0
  • StornierenAntwort