Maison  >  Questions et réponses  >  le corps du texte

Comment obtenir un nœud dans la balise HTML ?

Si vous utilisez des événements de clic, vous pouvez utiliser l'événement pour connaître le nœud actuel.
Cependant, si l'événement n'est pas lié, comment obtenir le nœud p actuel dans p标签

<p>这是一个段落</p>

Mon exigence est que lors du défilement vers différents nœuds via la barre de défilement, v-show=true

<p ref='pBox'>
    <p v-show='body.scrollTop === 当前节点.offsetTop'>这是一个段落1</p>
    <p v-show='body.scrollTop === 当前节点.offsetTop'>这是一个段落2</p>
    <p v-show='body.scrollTop === 当前节点.offsetTop'>这是一个段落3</p>
</p>
export default {
    computed: {
        body: this.$refs.pBox.offsetParent
    }
}
曾经蜡笔没有小新曾经蜡笔没有小新2680 Il y a quelques jours705

répondre à tous(4)je répondrai

  • 天蓬老师

    天蓬老师2017-05-19 10:36:54

    Vous pouvez utiliser des instructions personnalisées pour implémenter, Démo :
    https://jsfiddle.net/fedesign...

    répondre
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-19 10:36:54

    scrollTop et offsetTop sont tous deux des variables.
    Pourquoi ne liez-vous pas l'événement scroll avec le scrollTop de body et tous les p requis Tous les offsetTop sont-ils enregistrés dans données ?
    Alors scrollTopoffsetTop都是变量。
    你要不绑定scroll事件的时候把bodyscrollTop和所有需要的poffsetTop都获取下存到data里?
    然后

    <p ref='pBox'>
        <p v-show='bodyScrollTop === offsetTop.p1'>这是一个段落1</p>
        <p v-show='bodyScrollTop === offsetTop.p2'>这是一个段落2</p>
        <p v-show='bodyScrollTop === offsetTop.p3'>这是一个段落3</p>
    </p>
    

    不过我对效果有点疑问,就是好几个p未显示的时候他们的offsetTop是不是同一个值。
    然后我想知道你的p rrreee

    Mais j'ai quelques doutes sur l'effet, c'est à dire que lorsque plusieurs p ne sont pas affichés, leurs offsetTop ont la même valeur.
    Alors je veux savoir à quoi fait référence votre nœud p ? Nœud de texte ? 🎜

    répondre
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-19 10:36:54

    document.querySelector('p').childen
    document.getElementByTagName('p')[0].childen

    répondre
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-19 10:36:54

    Merci pour vos réponses, la solution finale est :

    // animated bounceIn 为animated.css里的
    <section class="newBlog" v-scroll-show>
        <p class="title animated bounceIn">
            <p class="headline">最近更新</p>
        </p>
        <p class="posts">
            <p>文章</p>
        </p>
    </section>
    .title, .posts {
        display: none;
    }
        directives: {
            scrollShow: {
                bind: (el) => {
                    window.addEventListener('scroll', () => {
                        if (document.body.scrollTop + 400 > el.offsetTop) {
                            for (let i = 0; i < el.children.length; i++) {
                                setTimeout(() => {
                                    el.children[i].style.display = 'block'
                                }, 1000 * i)
                            }
                        }
                    })
                }
            }
        }

    répondre
    0
  • Annulerrépondre