[Glide警告]:根元素必须是现有的HTML节点TypeError:this.root未定义

时间:2018-10-07 21:10:34

标签: javascript ecmascript-6 glidejs

index.htmlabout.html两页中包含一个滑块。 index.html页面滑块可以正常运行,但是另一个HTML文件about.html出现错误:

  

[滑行警告]:根元素必须是现有的HTML节点   TypeError:this.root未定义

似乎Glide找不到从中初始化的元素。 如何解决此问题?

可以在a GitHub issue I fileda related issue posted by another user上找到更多信息。

1 个答案:

答案 0 :(得分:0)

当您将选择器字符串作为参数传递时,Glide将不会为您的多个实例初始化。它将看到这是一个字符串,并进行单个querySelector调用。

要使用同一个选择器初始化多个滑块,您必须自己查询HTMLElement的集合,并分别(在一个简单的循环中)分别初始化每个滑动器上的滑动。

var sliders = document.querySelectorAll('.glide');

for (var i = 0; i < sliders.length; i++) {
  var glide = new Glide(sliders[i], {
    // options
  });

  glide.mount()
}