gpt4 book ai didi

javascript - Jquery和篮子js缓存

转载 作者:行者123 更新时间:2023-11-28 08:15:42 24 4
gpt4 key购买 nike

我正在使用 Basket JS 缓存我的一些脚本,下面是我的代码的一部分。

主要问题是插件序列加载但不执行,如果我刷新页面,它就会执行。

但是插件 smoothscroll 执行得很好。

basket.require({ url: 'jquery/1.9.1/jquery.min.js'})
.then(function () {
basket.require({ url: 'js/vendor/jquery.sequence-min.js'},{ url: 'js/vendor/jquery.smooth-scroll.min.js'})
.then(function () {
req =basket.get('js/vendor/jquery.sequence-min.js');
scpt = req.data;
$('.seven a:link').smoothScroll();
basket.require({ url: 'js/vendor/s2.js'});
});
});

s2.js:

$(document).ready(function(){
var options = {
nextButton: true,
prevButton: true,
pagination: true,
animateStartingFrameIn: true,
autoPlay: false

};

var mySequence = $("#sequence").sequence(options).data("sequence");

});

我尝试了什么?

如果我正常加载jquery并通过Basket加载sequenceJs,那么会发生同样的事情。

如果我正常加载jquery和sequenceJs,那么一切正常。

我尝试使用 jQuery Getscript 加载缓存版本,但它不会注入(inject)脚本。

req =basket.get('js/vendor/jquery.sequence-min.js');
scpt = req.data; // Use Getscript with scpt

同样的事情发生在 jQuery 验证中。

我猜它在页面加载之前执行?这就是为什么它在第二次刷新页面时触发。

最佳答案

我发现了类似的结果,但我原以为这是出于不同的原因。我发现在第二次加载时它们对我有用,所以我认为在执行它们之前,basket.js 正在调用 .then 。

 basket.clear();
basket.require({ url: 'tooltips.js' })
}).then(function () {
req = basket.get('tooltips.js');
alert(req);

如果没有basket.clear()行,它可以在第二页加载或刷新时工作。我就这个问题联系了basket.js,因为我认为这似乎是他们的 promise 系统中的问题,或者可能是RSVP中的问题。我将在 github 上尝试他们代码的其他分支,看看是否有任何内容适合我。

嗯,我又想了想,我觉得你是对的。这是一个内联代码问题。我将内联代码复制到另一个 js 文件中,并将其放入 then 中,它警告对象对象,并且代码按预期执行。但我还不确定我想做什么,因为我不想有太多的 js 文件。

 basket.clear();
basket.require({ url: 'tooltips.js' })
}).then(function () {
basket.require(a file with the same code in it instead of inline

这有效。

关于javascript - Jquery和篮子js缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23620514/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com