javascript 仅在页面刷新时执行 - Squarespace 站点,不涉及 Turbolinks
javascript executes only on page refresh - Squarespace site, NO Turbolinks involved
这个网站上有类似的问题标题,我已经阅读了他们所有的解决方案,但问题总是与 Turbolinks 或其他问题有关。在这种情况下,我仅使用 javascript/jQuery,因此这些解决方案无关紧要。
我写了一个简单的脚本来找到最高的容器,然后将块中的其余容器调整为与最高容器相同的高度。我将此脚本应用于 Squarespace 摘要块,以便同一块中的所有摘要项都具有相同的高度。
然后我添加了一个条件语句,该语句将导致此功能仅在屏幕宽度超过 810 像素时执行。
结果是这个脚本完全按照它应该的方式工作,但只有当我直接进入页面或刷新页面时。如果我从另一个页面导航到该页面,它将不起作用。
$(function() {
if($(window).width() > 810){
var maxheight=-1;
$('#block-yui_3_17_2_25_1494432854570_9795 .summary-excerpt').each(function() {
if(maxheight < $(this).height())
{
maxheight = $(this).height();
}
});
$('#block-yui_3_17_2_25_1494432854570_9795 .summary-excerpt').each(function() {
$(this).height(maxheight);
});
}
});
非常感谢任何想法,因为我已经研究了与我的相似的每个问题并且 none 的解决方案对我有用。
注意:我没有收到错误。我在 if 语句之前放置了一个 alert() 并确认当您从另一个页面导航到该页面时该函数不会 运行 。然而,当我刷新页面时,我确实收到了一条警告,正如预期的那样。
在 Squarespace 中,当您的自定义 Javascript 仅在页面刷新后有效时,它很可能与 Squarespace's AJAX loading:
有关
Occasionally, Ajax may conflict with embedded custom code or anchor
links. Ajax can also interfere with site analytics, logging hits on
the first page only.
您可以为您的模板禁用 AJAX。或者,查看此处概述的其他方法:
这个网站上有类似的问题标题,我已经阅读了他们所有的解决方案,但问题总是与 Turbolinks 或其他问题有关。在这种情况下,我仅使用 javascript/jQuery,因此这些解决方案无关紧要。
我写了一个简单的脚本来找到最高的容器,然后将块中的其余容器调整为与最高容器相同的高度。我将此脚本应用于 Squarespace 摘要块,以便同一块中的所有摘要项都具有相同的高度。
然后我添加了一个条件语句,该语句将导致此功能仅在屏幕宽度超过 810 像素时执行。
结果是这个脚本完全按照它应该的方式工作,但只有当我直接进入页面或刷新页面时。如果我从另一个页面导航到该页面,它将不起作用。
$(function() {
if($(window).width() > 810){
var maxheight=-1;
$('#block-yui_3_17_2_25_1494432854570_9795 .summary-excerpt').each(function() {
if(maxheight < $(this).height())
{
maxheight = $(this).height();
}
});
$('#block-yui_3_17_2_25_1494432854570_9795 .summary-excerpt').each(function() {
$(this).height(maxheight);
});
}
});
非常感谢任何想法,因为我已经研究了与我的相似的每个问题并且 none 的解决方案对我有用。
注意:我没有收到错误。我在 if 语句之前放置了一个 alert() 并确认当您从另一个页面导航到该页面时该函数不会 运行 。然而,当我刷新页面时,我确实收到了一条警告,正如预期的那样。
在 Squarespace 中,当您的自定义 Javascript 仅在页面刷新后有效时,它很可能与 Squarespace's AJAX loading:
有关Occasionally, Ajax may conflict with embedded custom code or anchor links. Ajax can also interfere with site analytics, logging hits on the first page only.
您可以为您的模板禁用 AJAX。或者,查看此处概述的其他方法: