Problem beim Abrufen der DOM-Höhe in $nextTick – Stapelüberlauf
phpcn_u1582
phpcn_u1582 2017-05-19 10:09:37
0
1
569

Um eine weitere Scrollfunktion zu erstellen, müssen Sie die Höhe des gescrollten Elements ermitteln
Der Code lautet wie folgt

    created() {
      this.titleid = this.$route.params.titleid
      this.communityid = this.$route.params.communityid
      this.TOPIC_LOADORDERBY({titleid: this.titleid, communityid: this.communityid})
       this.$nextTick(function () {
           // DOM 现在更新了
           // `this` 绑定到当前实例
           this._initScroll()
           let self = this;
               console.log(self.$refs.scorll.clientHeight)
               console.log(self.$refs)
               let height = self.$refs.scorll.clientHeight - self.$refs.topicReply.clientHeight;
                self.meunScroll.scrollTo(0, -height,0)

        })

Ich habe festgestellt, dass der erhaltene Wert nicht der tatsächliche Höhenwert war. Zuerst vermutete ich, dass die Daten nicht gerendert wurden, also überprüfte ich die Werte der Attribute im DOM und stellte fest, dass der Inhalt vorhanden war von clientHeight war genau so, wie ich es brauchte, aber ich weiß nicht, warum, wenn ich den clientHeight-Wert erhalte, es nicht das ist, was ich will, aber das Ergebnis ist immer noch das gleiche erhalten, wenn die Zeit 1000 ist;

phpcn_u1582
phpcn_u1582

Antworte allen(1)
给我你的怀抱

在created的钩子函数中,模板还没渲染好,试试mounted

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage