嘿人。: sun_with_face:

对于ix1,有一个选项可以重新初始化webflow,这是构建单页网站和使webflow的交互工作绝对需要的。的功能是Webflow.ready ();而且Webflow.destroy ();

有人知道ix2也适用吗?因为上面的函数没有。

@danro@samliew@CallMeChris

那就太棒了!
谢谢你!

2喜欢

嘿,Jaro,
不幸的是,我自己也不知道。

但那将是非常方便的确定!

再把这个撞到@danro…任何想法?

干杯

重新启动?不知道自己在做什么吗?

对我来说,我正在建立一个单页网站使用barba.js但也有其他可能的情况。在这里看到的:

不行,了吗?

那得把这个加起来。

1像

试图用芭芭做同样的事情,但过渡被打破了……

嗨,有人找到解决办法了吗?我也遇到过类似的问题,这是我目前所做的:
我已经设置了按钮,加载页面“page1”和“page2”使用巴巴.js。页面正在加载,页面之间的转换也在工作,但加载到barba-容器中的内容没有响应。html嵌入面板中的点击事件和gsap动画不起作用。

希望这个解释有意义,我还在下面添加了一个分享链接。谢谢你!

我已经设置了一个测试文件(https://preview.www.raktarban.com/preview/barba-3fedff?preview=ea1f49029092a0f950bc43ad0f0c4650).

这里是发布的链接-http://barba-3fedff.webflow.io/

我要撞它,因为这是件大事。

我集成了firebase来加载一些CMS没有设计的更大的数据集……我延迟加载是为了节省读取(显然),我需要一种方法来重新初始化交互。

我已经恢复到v1交互和destroy() / ready()在每次动态加载之后…这有点糟糕,也造成了一些关于状态的挫折。(因为点击交互不是切换,而是“第一次点击/第二次点击”

我们需要一种方法来重新初始化v2交互。更好的是,有一种方法可以简单地搜索DOM(或特定的DOM元素)并根据需要添加交互监听器。

嘿,水疗也需要这个功能。我查看了ix2接口,尝试调用Webflow.ready()等。

有消息吗?

大家好,很抱歉在这个话题上回复晚了。正如您所发现的,IX2的工作方式与支持Webflow.ready /破坏周期。

Webflow.destroy ()实际上停止了IX2引擎和所有相关的事件+状态准备好()函数不会重新初始化引擎。

Webflow.require (ix2) .init ()在大多数情况下都能成功。只要IX2已经用序列化的JSON数据初始化了一次,就会重复调用init ()将简单地重新启动引擎并查询DOM中可能受到影响的任何新节点。

4喜欢

@Reed_Debaets回复:部分状态重新加载,不幸的是我们还不支持这个。

但是,如果你熟悉回来的,您可能能够弄清楚如何重新填充IX2状态,因为我们公开了IX2 store +操作。这里有一个例子:

const store = Webflow.require('ix2').store;让oldState;store.subscribe(() => {const ixSession = store.getState().ixSession;const eventState = ixSession.eventState;if (oldState !== eventState) {console.log(eventState);oldState = eventState;}});

使用上面的选项应该可以输出任何IX2事件状态更改,如悬停或第二次单击。一旦确定了想要修改的事件状态,就可以简单地将一个操作分派到存储区。下面是第二次点击状态恢复的样子:

const actions = Webflow.require('ix2').actions;store.dispatch(行动。eventStateChanged (e: 0, {clickCount: 1}));

希望会有帮助!

4喜欢

yuhuuuu !最后。非常感谢@danro.周末一定要试试。<3

不幸的是,这似乎对我不起作用。(当设置断点时,它会偶尔起作用。)

我认为问题是我有动画触发PAGE_START,我不认为这是通过ix2.init()重新发出的。

有没有一种方法我可以只是发射PAGE_START到Webflow/ix2以某种方式?

这句话似乎对我有帮助:

窗口。Webflow & & window.Webflow。要求(ix2) .init ();文档。dispatchEvent(new CustomEvent('IX2_PREVIEW_LOAD'));
1像

@andy_burke看来你的思路是对的。您还可以模拟本机事件,因为这就是PAGE_START /完成依赖于:

文档。dispatchEvent(新事件(' readystatechange '));
2喜欢

@andy_burke,我也在想同样的事情。你发布的代码应该在_this.done()之前添加到barbara .js转换函数中吗?还是别的地方?@buntestrahlen你们看过这个解了吗?

我最终得到了这个,它似乎像我预期的那样工作:

窗口。Webflow & & window.Webflow.destroy ();窗口。Webflow & & window.Webflow.ready ();窗口。Webflow & & window.Webflow。要求(ix2) .init ();文档。dispatchEvent(new Event('readystatechange'));
1像

这个改变了吗?我试图得到一个动画播放,这似乎不再工作。

我收回它,它正在工作,但不知怎么的不是显示上的元素:none div(它稍后通过代码显示)。有什么线索能说明原因吗?

嗨,安迪!
你能给我举个完整的例子吗?
我不能捕捉事件…" eventState "总是空的。