我有一个使用elementor page builder构建的WordPress页面,在该页面中,我使用名为响应式动画书的插件显示“动画书”(pdf查看器)。动画书由javascript函数响应,每当浏览器窗口调整大小时,动画书都会自动调整大小(我不知道为什么,但这不是我的插件)。
问题是这些书以最小的大小呈现,插件会激发jQuery(window).trigger(\'rfbwp.resize\');
加载页面时,触发调整大小以使其适合当前窗口。然而,这似乎在某些浏览器上不起作用(至少在我的mac上的safari和chrome中是这样),这导致它们仍然很小。我发现当我在$(window).on(\'scroll\')
事件,每当我滚动时,它都会完美地调整书本的大小。当然,每当我实际调整页面大小时,它也会调整大小,但是,当我将这行代码放入$(window).on(\'load\')
事件
这让我觉得当这个事件触发时,元素还没有正确加载,这很奇怪,因为我认为窗口加载事件是最后触发的。
Could this have something to do with the way WordPress builds a page, 既然所有组件都有自己的脚本?是这样的吗$(window).on(\'load\')
最后触发-即使在复杂的WordPress页面中?
相关页面位于http://cdgstyle.mixrabbit.com/lookbook/
SO网友:WebElaine
这可能与WordPress核心无关——在大多数情况下,当插件发生冲突时,就会出现这种类型的问题。我建议停用所有其他插件,并尝试一个默认主题,一个la 2017。如果在这一点上有效,您可以切换主题(&A);测试,然后一次激活一个插件&;测试,直到你发现什么是冲突的,然后报告给插件作者,这样他们就可以找到解决办法。
同时,如果使用默认主题,但只有此插件仍然不起作用,那么可以尝试以下两种方法来代替$(window).on(\'load\')
:
jQuery(window).load(function($) {
// your function
});
或者更简洁
(function($) {
// your function
})(jQuery);
WP使用jQuery没有冲突-因此它可能只是
$
语法。如果这样可以解决问题,那么通常向插件repo提交pull请求以促使作者采取行动的速度最快。