javascript - 以 Instantclick 风格进行 PJAX 调用(仅在链接悬停时加载所需的内容)

标签 javascript jquery ajax pjax instant

PJAX 的工作非常简单,只需加载请求页面所需的内容,而不是再次加载所有常见模式并将接收到的内容放置在布局中 - 就像带有 Angular JS 的单页应用程序,带有所有后退按钮和历史记录能力。

Instantclick (instantclick.io) 是另一个有趣的方法,它在链接悬停时请求页面并将内容加载到缓存中,并在用户释放 click-excellent 时替换内容,但这会加载整个页面。

我想要的是 Instantclick 仅提取所需的内容,例如 PJAX,例如在链接悬停时触发 PJAX 请求(无论是否支持 Instantclick) - 从进入链接并单击到单击释放存在延迟,此时 PJAX 就可以完成工作并立即将内容提升 100%。

有办法做到这一点吗?

谢谢

最佳答案

假设您的 anchor 标记有一个名为“data-pjax”的属性,并且容器 div 名为“content”,这应该可以工作:

        if ($.support.pjax) {
            $('a[data-pjax]').on('mouseover', function(event) {
                var container = $('#content');
                $.pjax.click(event, {container: container});
            });
        }

关于javascript - 以 Instantclick 风格进行 PJAX 调用(仅在链接悬停时加载所需的内容),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28236711/

相关文章:

javascript - 在 <p> 中显示 Javascript 消息时出现问题

javascript - jQuery ajax 引用网址

javascript - 将数据传递给 ngAfterViewInit() 内的函数 - Angular 6

javascript - 在不返回服务器的情况下动态加载图像的最佳方法是什么?

javascript - 如何将数组从 html 发送到 node.js,然后再发送到 mongodb?

jquery - 优化 jQuery 代码

javascript - jquery slider 对 ajax 生成的 div 的影响

javascript - 在输入标签上按 Enter 键后,removeEventListener onfocusout - 错误未定义

javascript - 如何通过单击按钮来更新 Flask 应用程序中的一个元素?

Javascript递增数字