javascript - 无法读取未定义的属性“添加”
问题描述
这是console.log嘿伙计们,我的javascript 代码有问题。当我点击一个按钮时,我尝试做一个动画,但我有这个错误:无法读取未定义的属性“添加”我不知道是什么问题!
import {
Util
} 来自'./Util.js'
export class Introduction {
/**
* Classe permettant de créer et d'animer une introduction
* @param {object} o - contient l'ensemble des mots d'intro
* @param {DOMElement} elementParent - Conteneur de l'animation
* @param {function} fonction - l'adresse de la fonction à exécuter après l'animation
}}
*/
constructor(o, elementParent, fonction) {
//Récupérer les valeurs passées en paramètre
this.titrePrincipal = o.titrePrincipal;
this.titreSecondaire = o.titreSecondaire
this.titreTernaire = o.titreTernaire
this.description = o.description
this.elmParent = elementParent
this.integrerIntro()
this.fonction = fonction
}
integrerIntro() {
/* Création des élément DOM qui seront animés.
Les éléments seront intégré dans le conteneur elmParent
*/
console.log('introduction')
let elmConteneur = this.creerElement(this.elmParent,
'section',
'',
'introduction')
let elmPrincipale = this.creerElement(elmConteneur,
'div',
this.titrePrincipal,
'rectangle')
let elmSecondaire = this.creerElement(elmConteneur,
'div',
this.titreSecondaire,
'rectangle')
let elmTernaire = this.creerElement(elmConteneur,
'div',
this.titreTernaire,
'rectangle')
let elmDescription = this.creerElement(elmConteneur,
'div',
this.description,
'rectangle')
let elmBouton = this.creerElement(elmConteneur,
'button',
'Commencer',
'bouton')
/* On garde une référence sur la fonction terminerIntro */
let refTerminerIntro = this.terminerIntro.bind(this)
elmBouton.addEventListener('mousedown', this.terminerIntro.bind(this))
}
creerElement(elmParent, balise, contenu, classCSS) {
console.log(balise)
let noeud = document.createElement(balise)
if (contenu != '') {
noeud.innerHTML = contenu
}
noeud.classList.add(classCSS)
elmParent.appendChild(noeud)
return noeud
}
terminerIntro(evt) {
this.elmParent.firstChild.classList.add('deplacementContenuIntro')
this.elmParent.firstChild.addEventListener('animationend', this.passerVersAnimationSuivante.bind(this))
}
passerVersAnimationSuivante(evt) {
Util.detruireTousLesNoeud(this.elmParent, this.elmParent)
this.fonction()
}
}
我也有这个文件:我认为我的 querySelector 有问题,但我不知道:/
import {contenuIntro} from './contenuIntro.js' // le contenu de l'intoduction */
import {Introduction} from './Introduction.js' //
import {AnimLettre} from './AnimLettre.js' //
/* l'élement de la page qui contiendra les éléments créés dynamiquement */
let elmHeader = document.querySelector('.header')
let intro = new Introduction(contenuIntro, elmHeader, animationLettre)
console.log(document.querySelector('.header'))
// debutQuestionnaire()
function animationLettre()
{
/* Une fois que l'animation des mots est terminé la fonction animLettre s'exécutera */
console.log('debut animation lettre')
const lesLettres = 'Veille-technologique'
let monAnimLettre = new AnimLettre(lesLettres, elmHeader, finAnim)
}
function finAnim()
{
console.log('animation terminée')
}
谢谢你的帮助 !
解决方案
推荐阅读
- laravel - Laravel orm with() 不起作用
- android - 如何修复 zsh:在 MacOS 上的 Android Studio 终端上运行 Gradle 命令时权限被拒绝
- php - 如何将文本区域的内容与php数组中的值进行比较?
- java - 如何在不导入任何包的情况下在 Java 中使用 Calendar 类?
- javascript - 使用 selenium 向下滚动 Div
- ruby-on-rails - Rails 关联不保存到数据库
- javascript - Safari 中的 IntersectionObserver API 不稳定
- php - 我可以通过 URL 参数值过滤自定义帖子类型项目吗?
- html - CSS - 无论视口大小如何,如何保持完整图像可见?
- python - 工作好几个小时后突然出现错误:调用 Python 对象时超出最大递归深度的递归错误