确定在Elementor中销毁并重新初始化刷卡的参考

时间:2019-03-07 22:36:29

标签: scope this destroy swiper elementor

Elementor Pro(WordPress页面构建器)与Swiper完美集成,将其GUI与JS参数和数据库内容相关联。

但是,对于我的项目,我需要对Swiper "CoverFlow" skin Init参数进行一些更改(显示更多幻灯片,更改面向方向的3D效果...)。

我希望使用Swiper API的Destroy method,如下所示:

mySwiper.destroy(deleteInstance, cleanStyles);

然后,我可以使用自己的自定义参数再次初始化Swiper。挑战在于,Elementor在frontend.js中调用Swiper的方式是一个复杂的匿名函数,它实际上并不能让我知道“ mySwiper”将是什么...在第567行:

this.swipers.main = new Swiper(this.elements.$mainSwiper, this.getSwiperOptions());

如果有人可以帮助我理解Init之后“ this.swipers.main”的含义,我将非常感激,以便我可以销毁该swiper并使用自己的参数再次对其进行初始化。

很显然,我无法编辑frontend.js本身,因为它是需要更新的插件文件。

为谁教我如何捕鱼以及为其他类似情况解决这些类型的难题的方法所用的加分。

1 个答案:

答案 0 :(得分:0)

您可以给Elementor小部件提供一个ID,例如slider1,然后使用JS,您可以使用:

var sliderInstance = document.querySelector('#slider1 .swiper-container').swiper;

此后,您可以随时随地致电sliderInstance.destroy()

如果要再次初始化它,可以调用:

var sliderInstance = new Swiper('#slider1 .swiper-container', {
    //options
});