【发布时间】:2019-02-28 13:03:52
【问题描述】:
由于某种原因,在挂载的钩子上,我似乎无法在浏览器上记录 DOM 元素,而我可能想循环遍历元素,或者,作为我最后的手段,我只在 HTML 集合的特定索引上工作:
以下是我遇到问题的 vue 组件:
<template>
<full-page ref="fullpage" id="fullpage" :options="options">
<slider class="section" :auto="false">
<slider-item v-animate-css="'fadeIn'">
<h1 class="mainTitle">PROJECT GORILLA</h1>
</slider-item>
<slider-item v-for="bkg in bkgImg" :style="{backgroundSize:'cover',
backgroundImage: 'url(' + bkg + ')'}">
<h1 class="mainTitle">PROJECT GORILLA</h1>
</slider-item>
</slider>
</full-page>
</template>
<script>
import { Slider, SliderItem } from 'vue-easy-slider'
import pinkBkg from '@/assets/img/IMG_2473.jpg'
import redBkg from '@/assets/img/IMG_4674.jpg'
import blueBkg from '@/assets/img/IMG_4716.jpg'
import greenBkg from '@/assets/img/IMG_2013.jpg'
export default {
data(){
return {
options:{
licenseKey:null
},
bkgImg:[pinkBkg,redBkg,blueBkg,greenBkg]
}
},
components: {
Slider,
SliderItem
},
mounted(){
let slides = document.getElementsByClassName("slider-item");
console.log(slides[0]);
}
}
</script>
<style>
.slider-item:nth-of-type(1) { background-color:black;}
.slider-item > .wrap {
display:flex;
justify-content: center;
align-items:center;
}
h1.mainTitle {
position:fixed;
z-index:99;
color:white !important;
}
.slider-item {
z-index:98 !important;
}
</style>
请记住,我目前正在为 vue-cli 使用 webpack 模板。老实说,jQuery 作为最后的手段已经越过我的脑海,但我真的不想 诉诸于此,因为应用程序具有良好的性能很重要...... 在这种情况下,console.log 返回未定义。但是如果我在浏览器上复制并粘贴代码,那么它会正常工作。
【问题讨论】:
标签: javascript vue.js vue-cli