Bootstrap Popover性能

时间:2018-06-26 20:19:29

标签: jquery asp.net-mvc bootstrap-4

我正在尝试以剃刀形式使用Bootstrap弹出窗口。我在页面上有一个东西列表,可以是任意数量的行。当您将鼠标悬停在该行上时,我想显示一个弹出窗口中的一项。 (不是我的要求)

我的弹出代码工作得很好,除了它的速度极慢。如果列表中有50个项目,则它将弹出窗口功能添加到每个项目中时,它将锁定浏览器30秒。

这是我简化的加载每件事的功能:

$("[name=pop]").each(function () {
        $(this).popover({
            trigger: "hover",
            html: true,
            animation: false,
            content: getContent($(this).prop("title"))
        });
    });

这是非常慢的。我不认为我之前见过jquery会循环执行每个循环。弹出窗口会尝试预填充内容吗?我在弹出窗口加载时调用了一个函数来获取内容的部分视图。它没有调用我的getContent,所以我认为它没有尝试预加载。

有什么方法可以加快速度吗?或者有更好的方法可以做到这一点?

1 个答案:

答案 0 :(得分:0)

title属性更改为data-content,并使用以下代码。

$("[name=pop]").popover({
            trigger: "hover",
            html: true,
            animation: false
        });

更新

要动态加载内容,请尝试类似的操作

$("[name=pop]").hover(function() {
   $(this).popover({
                trigger: "hover",
                html: true,
                animation: false,
                content: getContent($(this).prop("title"))
            }).popover('show');
});