阻止 Adob​​e Edge preload.js 文件加载 jquery

2023-12-14

首先我必须说,我不是一个专业的程序员,而是一个从实践中学习的设计师。因此,如果可能的话,恐怕我需要简单的解释。 我在特定脚本的帮助下使用 Edge animate 作为网站的一部分(由 Andrew Trice 编写,请参见此处:http://www.tricedesigns.com/2012/07/12/using-adobe-edge-animations-as-components/)。我还成功在我的 libs 文件夹中仅存储了 1 个 Edge preload.js 文件。在其中,我在最后引入了一个变量,以便能够依次加载边缘动画。代码:

function setupAnimationView( template ) { 

var $workPage = $("#workPage")

$workPage.empty();
window.AdobeEdge = undefined;
AdobeEdge = undefined;

var viewModel = { workChart: workChart };

var html = Mustache.to_html(template, viewModel)
$workPage.append( html );

//detect if edge is loaded yet
var edgeDetectionFunction = function() {

    if ( AdobeEdge && AdobeEdge.compositions != undefined ) {
        //put a delay here
        var hasComposition = false;

        if ( AdobeEdge.compositions ) {
            //loop to see if the composition is actually loaded
            for ( var key in AdobeEdge.compositionDefns ) {
                hasComposition = true;
                break;
            }
        }

        if ( hasComposition ) {
            setTimeout( function() { 
                $(window).trigger( "animationReady" ); }, 100 );    
            return;

        }
    }
    else if ( AdobeEdge ) {
        window.onDocLoaded();
    }
    setTimeout( edgeDetectionFunction, 100 );
}
edgeDetectionFunction();

}

修改后的Adobe Edge preload.js:

...

   requiresSVG=false;

doDelayLoad=false;
htFallbacks={
};

aLoader = [
{ load: "libs/jquery-1.10.2.min.js"},
{ load: "libs/jquery.easing.1.3.js"},
{ load: "libs/jquery.rotate.js"},
{ load: "libs/edge.1.0.0.min.js"},
    {test: !hasJSON, yep:"libs/json2_min.js"},
      { load: "templates/Chart_" + workChart + "/Page_work_edge.js"},
      { load: "templates/Chart_" + workChart + "/Page_work_edgeActions.js"}];

loadResources(aLoader, doDelayLoad);

preContent={dom:[
]}
;//simpleContent

dlContent={dom: [
]}
;//simpleContent

//updated paths for loader
//added this so it can be invoked later
window.onDocLoaded = onDocLoaded;

})( "animation_content");

到目前为止,感谢安德鲁,一切都工作得很好,除了我在我的开发工具(Safari)中看到我的代码导致每次新动画开始时一遍又一遍地加载基本的js文件,如jquery-1.10.2.min.js运行,这些文件加起来无穷无尽……我想这不是一件好事。 我什至理解为什么(至少我相信),所以我在预加载结束时删除了 aLoader 对象中的相应行。 (当然它们是在我的索引页面的脚本标签中加载的)

aLoader = [
{ load: "libs/jquery-1.10.2.min.js"}, // deleted this one
{ load: "libs/jquery.easing.1.3.js"}, // deleted this one
{ load: "libs/jquery.rotate.js"}, // deleted this one
{ load: "libs/edge.1.0.0.min.js"}, // deleted this one
    {test: !hasJSON, yep:"libs/json2_min.js"},
      { load: "templates/Chart_" + workChart + "/Page_work_edge.js"},
      { load: "templates/Chart_" + workChart + "/Page_work_edgeActions.js"}];

因为我不明白为什么有必要多次加载它们。然而,这样做后,只有第一个动画运行,第二个动画不再运行。但为什么?我在浏览器中检查并看到 jquery-1.10.2.min.js 位于页面中,那么为什么 Edge 文件不能(或看起来如此)不再使用它呢?其他的也一样(旋转等)。 我还尝试从上面的函数中隐藏这两行:

window.AdobeEdge = undefined;
AdobeEdge = undefined;

但没有任何结果。 避免重新加载那些基本所需的 .js 文件的技巧在哪里?有任何想法吗?非常感谢你的建议 加拉瓦尼

@Jamie

编辑: 所以,你好杰米!我对你的解决方案很好奇,所以我放弃了其他一切并尝试了它。遗憾的是,它在我试图在此编辑上方的行中尽可能准确地解释的情况下不起作用。 为了避免任何误解,我按照您的指示更改了代码(顺便说一句,解释得很好!):

edgePreload.js(在我的版本中,它没有添加文件名,位于我的“lib”文件夹中,在 Andrew 的方法之后每个新动画都会访问该文件夹 - 见上文!):

window.AdobeEdge = window.AdobeEdge || {};
window.AdobeEdge.$_ = $;
// Include yepnope
if(!AdobeEdge.yepnope) {…

然后进一步:

$(function() { // your insert opening function

(function(compId){

var htFallbacks; …

…
window.onDocLoaded = onDocLoaded;

})( "animation_content");

}); // your insert closure

我的 index.html 包含以下脚本(以及其他脚本):

<script src="libs/jquery-1.11.0.min.js"></script>
<script src="libs/jquery.easing.1.3.js"></script>
<script src="libs/jquery.rotate.js"></script>
<script src="libs/edge.1.0.0.min.js"></script>
<script src="libs/mustache.js"></script>
<script src="libs/mustacheHelper.js"></script>

我喜欢在我的服务器上托管它。 (避免出现不受我控制的版本更新带来的各种麻烦)

现在我敢于并且希望能够从我的 aLoader 箭头中取消这些东西,如下所示:

aLoader = [
// { load: "libs/jquery-1.11.0.min.js"},
// { load: "libs/jquery.easing.1.3.js"},
// { load: "libs/jquery.rotate.js"},
// { load: "libs/edge.1.0.0.min.js"},
    {test: !hasJSON, yep:"libs/json2_min.js"},
      { load: "templates/Chart_" + workChart + "/Page_work_edge.js"},
      { load: "templates/Chart_" + workChart + "/Page_work_edgeActions.js"}];     

但 id t 不起作用(显然是由于缺少边缘代码而抛出各种错误)。 当我再次替换 aLoader 中的所有内容时,至少它可以正常工作,而不会显示有关新插入行的错误。但我没有结果。然而,那就太酷了! 我错过了什么?您真的彻底检查了我在上面几行中所做的事情吗?

我很想听听你的想法! 到目前为止,感谢您的兴趣并愿意分享您对这种复杂边缘材料的知识(没有太多讨论 - 我想有充分的理由 - 在堆栈溢出中)。


我一直遇到确切的问题,您现在可能已经解决了它,但希望它对其他人有帮助。

1) 确保通过在发布设置中选择“HTML”并发布到干净的文件夹来获取文件。

2)使用美化工具(例如http://jsbeautifier.org/)使[filename]_edgePreload.js文件可读。

3)添加这一行window.AdobeEdge.$_ = $;就在顶线下方window.AdobeEdge = window.AdobeEdge || {};

4)找到这一行(function(compId) {(这是加载方法的开始)并将整个方法(这里和页面底部之间的所有内容)包装起来$(function() { and });

5)在aLoaderarray,删除指定如何加载edge和jquery的前两个条目。

6)添加边库(目前https://animate.adobe.com/runtime/4.0.1/edge.4.0.1.min.js) 与 jQuery 一起添加到站点的头部。


不要因为这令人困惑而感到太难过,Adobe Edge 输出代码是由有腿的卷心菜编写的。每个人都在为此挣扎:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

阻止 Adob​​e Edge preload.js 文件加载 jquery 的相关文章

  • 表单未使用 AJAX 提交

    再次更新 如果有人关心的话 我之前发布的解决方案由于某种原因停止工作 我在 ajax 请求中包含了 beforeSend 并将验证表单的 js 部分粘贴到其中 现在就像一个魅力 form on submit function e e pre
  • JavaScript 中的 Promise.all:如何获取所有 Promise 的解析值?

    我编写了以下node js文件 var csv require csv parser var fs require fs var Promise require bluebird var filename devices csv var d
  • 是否可以用 json 进行表达式/计算?

    我使用出色的 json server 作为应用程序的后端 它对于访问自定义端点以检索一些数据非常有用 但是如果它允许我进行计算 表达式以便我也可以模仿后端行为 那将会非常有用 以这个数据结构为例 products name football
  • 按自定义字母顺序对数组进行排序

    如何对这样的数组进行排序 apple very auto tom tim violet 要按 v a t x b 等排序 不按字母顺序 violet very auto tom tim 在脚本中 我会做这样的事情 myArray sort
  • 如何滚动到 jQuery Mobile 中的页面元素?

    我有一个很长的 jQuery 移动页面 并且想在页面加载后滚动到该页面中间的元素 到目前为止 我已经尝试了一些事情 最成功的是 jQuery document bind mobileinit function var target if t
  • 向 FTP 服务器执行跨域 XMLHTTPREQUEST 的语法是什么?

    我有一个 webDav CORS 插件 可以使用它在 webDav 服务器上 POST PUT GET REMOVE ALLDOCS 文件 我现在想对 FTP 做同样的事情 但我正在努力获取xmlhttprequest 工作语法 我只是收到
  • Backbone-relational 无法实例化两个 RelationalModel 对象

    我正在尝试实现 BackboneRelational 并不断获得 无法实例化多个 Backbone RelationalModel 每种类型都有相同的 ID class App Models User extends Backbone Re
  • 如何最好地实现多个重叠元素的翻转和推出事件?

    Problem 我正在开发一个网站 其中有一个 拨号盘 显示代表伞式公司不同部门的多个选项卡 目前我已经用 HTML CSS 准备好了一切 每个选项卡的定位 内圈处于较高位置z index因为选项卡在滚动时需要向外动画 我可以实现这部分 选
  • 具有适当后退按钮支持的 jQuery Lightbox

    在进行了一些可用性测试后 我发现参与者打开了jQuery 灯箱 http leandrovieira com projects jquery lightbox 查看更大的图像 然后 他们只需点击浏览器后退按钮 而不是单击 关闭 按钮 这会将
  • 在 NPM 上捆绑并发布客户端 Web 代码

    我制作了一个 JavaScript 文件 假设它的内容是这样的 let myCoolAlert str gt alert str in a different js file SO doesn t allow you to cross fi
  • RxJS - 从可观察对象中获取最后 n 个元素

    我想从可观察对象中获取最后 3 个元素 假设我的时间线是这样的 a b c d e f g h i j gt where a b c d e f g h i j are emitted values 每当发出新值时 我想立即获取它 因此它可
  • Typeahead.js 干扰 Bootstrap 输入组

    如何防止 Typeahead js 拆分我的 Twitter Bootstrap 3 输入组 每当我将 Typeahead javascript 指向属于输入组一部分的文本区域时 连接的文本区域和提交按钮就会停止连接 这只是 Typeahe
  • 检查 href 中是否存在 jQuery 中的查询字符串

    我目前有一段 jQuery 用于附加带有一些位置信息的 URL jQuery a attr href function return this href location 123 abc 我的问题是大多数链接都有一个 其中使用上面的 就可以
  • 如何在 svelte 中制作搜索过滤器

    我有两个组件在组件树中距离很远 我对如何在两者之间进行通信存有疑问 我有搜索组件 listItems 和商店 商店 svelte
  • 如何修复 AJAX 在选中复选框时始终触发?

    有时这个 AJAX 会触发 有时不会 让我解释一下 habit js document ready function habit check change function habit this parent siblings habit
  • 如何逐步绘制矢量路径? (拉斐尔.js)

    如何逐步动画化矢量路径 就像它被绘制一样 换句话说 慢慢地逐像素地显示路径 我在用着Rapha l js but如果您的答案不是特定于库的 例如可能有一些通用的编程模式可以完成此类事情 我对矢量动画相当陌生 欢迎 使用直线路径很容易做到 就
  • JavaScript 右移负数

    这是片段 var i 101 console log 101 i toString 2 console log 101 gt gt 1 i gt gt 1 toString 2 var l 101 console log 101 l toS
  • 禁用 Materialise Carousel 上的触摸

    看起来以前没有人问过这个问题 因为我几乎在互联网上寻找一个非常简单的答案 如何禁用在物化轮播上向左 向右滑动的功能 在 Materialize js 添加 编辑 var allowCarouselDrag true value functi
  • addEventListener keydown 不起作用

    我在互联网上找到了一些基本的 Pong 代码 并尝试添加按键 代码在这里 http cssdeck com labs ping pong game tutorial with html5 canvas and sounds http css
  • Javascript:修改原型不会影响现有实例[重复]

    这个问题在这里已经有答案了 我创建了原型的 2 个实例 更改了原型中的函数 更改反映在两个实例中 很棒 但是 当我通过删除该函数来修改原型时 该函数对于现有实例仍然存在 function A this name cool A prototy

随机推荐

  • 用于绘图的反向变换“scale()”

    我有一个以使用为中心的解释变量scale 用于预测响应变量 d lt data frame x runif 100 y rnorm 100 d lt within d s x lt scale x m1 lt lm y s x data d
  • 在 Python Django 中运行单元测试时如何禁用日志记录?

    我正在使用基于简单单元测试的测试运行器来测试我的 Django 应用程序 我的应用程序本身配置为在 settings py 中使用基本记录器 logging basicConfig level logging DEBUG 在我的应用程序代码
  • 熊猫字典到数据框 - 列乱序?

    我进行了搜索 但没有看到与这个特定问题相关的任何结果 我有一个 Python 字典 并将我的字典转换为 pandas 数据框 pandas DataFrame data dict 它可以工作 但只有一个问题 我的 pandas 数据框的列与
  • set @flag =1 和 set @@flag = 1 之间的区别

    你好 有什么区别 set flag 1 and set flag 1在 SQL Server 中 谢谢 没有什么 一些内置函数的名称以双 at 符号开头 作为一个惯例 为了避免混淆 通常建议您不要使用以 Source MSDN 使用标识符
  • 使用 Json.NET 反序列化包含数字键的 JSON

    我想将以下 JSON 使用 Json NET 反序列化为一个对象 但不能 因为类名需要以数字开头 这方面的一个例子是维基百科文章 API 使用API提供 JSON 响应会返回类似这样的内容 请注意 16689396 在 的里面 pages
  • 将 javascript 中字符串中的所有逗号分隔数字替换为点分隔数字

    假设有一个带有数字的字符串 例如 test test 12 01 test 12 4 12 3 s 2 some other text other text 2 text 我需要将带逗号的数字替换为带点的相同数字 并且不更改任何其他内容 所
  • 为什么 gcc 中“-l”选项的顺序很重要? [复制]

    这个问题在这里已经有答案了 我正在尝试编译一个使用udis86图书馆 实际上我正在使用中给出的示例程序用户手册图书馆的 但是编译的时候却报错 我得到的错误是 example c text 0x7 undefined reference to
  • JavaScript 中缺少分号导致 IE9 中出现“‘foo’未定义”错误

    我只花了大约四个小时来解决这个问题 我知道是什么原因造成的 但不知道为什么 为什么 困扰着我 我有以下 js 文件 function funcA function funcB do while 1 1 return 0 我还有以下 HTML
  • 制作 FPS 淋浴? [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我正在尝试制作一个显示 FPS 的字符串 但是 我如何真正获得我的程序 FPS 我想用 g drawString getFPS 10 10 我如何获得我的 FPS 这段代码适合我
  • void 方法不能返回值

    我正在网上关注 CS106A 讲座 我正在查看第 12 讲中的代码 但它在 Eclipse 中给了我错误 这是我的代码 看来错误是因为我的中的 void 这个词main方法 我尝试删除main方法 但是Java当然不能没有它运行 我是新手
  • 如何使 HandleErrorAttribute 与 Ajax 一起使用?

    在我的 ASP NET MVC 2 应用程序中 我使用 HandleErrorAttribute 在出现未处理异常的情况下显示自定义错误页面 并且除非异常发生在 Ajax ActionLink 调用的操作中 否则它可以正常工作 在这种情况下
  • 是否可以使用Javascript关闭Android浏览器?

    我想在网页中放置一个 关闭 按钮 我们的客户想要这样做 当我单击此按钮时 我想关闭浏览器 不是当前选项卡 而是 Android 浏览器 IE Firefox Chrome 等中的 浏览器 我查了一下 找到了一个方法 window close
  • 有没有办法用 Pillow 绘制渐变颜色的文本?

    我即将创建一个带有文字的图像 到目前为止一切正常 现在 为了进行微调 我认为使用渐变颜色的文本会很好 这就是我的重点现在 at 这就是我want具有 我已经成功生成了以下图像 使用该脚本 from PIL import Image Imag
  • Java中易失性和同步的区别

    我想知道将变量声明为volatile并且总是访问 a 中的变量synchronized this Java 中的块 根据这篇文章http www javamex com tutorials synchronization volatile
  • 表格行折叠/展开 css

    我正在使用以下示例Demo由 PSL 在网站上的帖子中提供 我有一个大表 当页面仅加载标题时 我不希望显示所有行 我应该改变border collapse collapse CSS 中的属性 在 dom 准备好后 你可以隐藏非 header
  • SQL java获取分配给自动增量主键的值[重复]

    这个问题在这里已经有答案了 我的表中有一个主键自动增量属性 我想知道为使用 statements executeUpdate 插入的行分配给它的值 如何以最好的方式实现这一目标 Use Statement getGeneratedKeys
  • Java 中的 Math.pow 错误

    我 显然 只是在学习编程 我似乎不知道该怎么做才能摆脱这个错误 错误位于倒数第二行 之前的行 System out print windChill 这里 写在下面 是 Java 生成的针对我遇到的错误的 可能提示 列表 expected m
  • 如何访问 iframe 复选框元素

    我有一个由复选框 父级 组成的网页 在同一个网页上 我还有一个来自另一个页面的 iframe 该页面显示许多记录 该页面还针对每条记录都有一个复选框 子级 如果我勾选父复选框 我想将其级联到 iframe 中的所有子复选框 并禁用这些子复选
  • 如何将参数从 Swift 本机代码“放入”Flutter

    我正在尝试将参数从 Swift 中的回调方法传递到 Flutter 这是我想要在我的本机 Java 代码中实现的示例 Override public void onRewardRequest final TJPlacement tjPlac
  • 阻止 Adob​​e Edge preload.js 文件加载 jquery

    首先我必须说 我不是一个专业的程序员 而是一个从实践中学习的设计师 因此 如果可能的话 恐怕我需要简单的解释 我在特定脚本的帮助下使用 Edge animate 作为网站的一部分 由 Andrew Trice 编写 请参见此处 http w