0

我正在尝试使用嵌入卡在 Rails 应用程序的主题索引页面中显示 url。虽然存在一些尴尬的轮播行为问题,但页面本身将呈现(由 rails 控制台确认)。然而,在页面加载每个部分后,浏览器将开始闪烁加载/刷新图标,并且偶尔 chrome 会使页面崩溃(以及我正在使用的云 IDE)(尽管 Internet Explorer 似乎被锁定甚至蓝屏死机)我不确定它是否是由它明确引起的(另外值得注意的是,在 Internet Explorer 中测试页面会导致 chrome 中的 IDE 崩溃,而所有其他选项卡不受影响)。当页面确实通过此(通常在第二次或第三次加载时)管理工作时,卡片本身将需要大约一分钟的时间来显示,并且出于测试目的,它仅加载大约 5 个 URL 100 次。

我的第一个想法是以某种方式渲染每张可用的卡片,尽管我不确定这将如何工作。

另一个想法是以某种方式中断对 api 的调用,因为它似乎试图一次加载所有卡信息。(这可能和第一个想法一样)

可能对主题页面进行分页可能会允许不那么密集的调用(这可能是一个毫无意义的术语),尽管我非常不清楚 api 是如何工作的,所以这可能不是答案。

我的另一个想法是以某种方式使 api 调用(s?)成为后台进程,但我不确定我将如何去做,因为所有的动作似乎都发生在客户端,这只是复合了对我来说很神秘。

总而言之,我拥有的 javascript 可能会使页面崩溃,并且当它运行时,加载时间会长得令人无法接受。任何加快速度和提高可靠性的方法都将不胜感激。

所有相关代码都在这个要点上,因为它分布在几个部分和资产文件中。

编辑

删除了 application.js 中嵌入的冗余(并且可能是有害的)加载

这提高了页面稳定性,但是页面显然是一次渲染/加载/(这里有一些动词)所有卡片

4

1 回答 1

1

对我来说最突出的是 Embedly jQuery 和 Embedly Cards 的使用。它应该是其中之一,而不是两者兼而有之。以下是使用卡片的 5 个 URL 的示例:

https://jsfiddle.net/xbwrnLsz/embedded/result/

我会摆脱:

$(document).ready(function(){
  $('p a').embedly({
    key: 'nonyodamnbusiness'
  });
});

因为您不需要它来渲染卡片。

于 2016-01-08T19:16:17.130 回答