Javascript Pjax/Ajax片段在加载时返回0的宽度/偏移网络宽度

Javascript Pjax/Ajax片段在加载时返回0的宽度/偏移网络宽度,javascript,jquery,ajax,requirejs,pjax,Javascript,Jquery,Ajax,Requirejs,Pjax,在以下站点上遇到Pjax片段的困难错误: 目前,点击nav中的“schedule”和“map”链接将通过Pjax和一些条件javascript加载页面片段,这是requirejs提供的 在“映射”页面上,第一个页面加载将使用侧面板类正确计算每个元素的宽度。但是,后续加载将返回0的宽度,尽管在查询宽度时所选元素存在于DOM中 要复制错误,请执行以下操作: 等待地图加载 单击“计划”链接以加载计划页面 单击“地图”链接以加载地图页面。每个侧面板的宽度将记录为0 如果在此测试期间保持控制台打开,您将

在以下站点上遇到Pjax片段的困难错误:

目前,点击nav中的“schedule”和“map”链接将通过Pjax和一些条件javascript加载页面片段,这是requirejs提供的

在“映射”页面上,第一个页面加载将使用
侧面板类正确计算每个元素的宽度。但是,后续加载将返回0的宽度,尽管在查询宽度时所选元素存在于DOM中

要复制错误,请执行以下操作:

  • 等待地图加载
  • 单击“计划”链接以加载计划页面
  • 单击“地图”链接以加载地图页面。每个
    侧面板的宽度将记录为0

  • 如果在此测试期间保持控制台打开,您将看到页面加载记录了正确的宽度,在第二步中动态加载计划页面,然后使用DOM中的
    .side_panel
    元素加载地图页面,但返回的宽度为0。

    如果查看控制台,面板div没有偏移父对象,这意味着它尚未插入DOM,这意味着宽度将为0。

    如果查看控制台,面板div没有偏移父对象,这意味着它尚未插入DOM,这意味着宽度将为0。

    如果查看控制台,面板div没有offsetParent,这意味着它尚未插入DOM,这意味着宽度将为0。如果查看控制台,面板div没有offsetParent,这意味着它尚未插入DOM,这意味着宽度将为0。你是100%正确的。它与缓存jQuery对象有关,引用的是一组旧的元素,这些元素已经从DOM中删除。非常感谢。你是100%正确的。它与缓存jQuery对象有关,引用的是一组旧的元素,这些元素已经从DOM中删除。非常感谢。