我正在继续学习流星,它正在慢慢融合在一起,并且正在从本教程中构建一些东西。我想添加一些其他的非功能性JS动画等,并决定以我熟悉的Greensock为例。我已经将CDN包含到main.html主体中的TweenMax中,并一直在模板帮助器中对其进行调用。

Main.html:

<head>
<title>NO-TEA-FY</title>
<link rel="stylesheet" href="css/noteafy.css" id="stylesheet">








模板:

<template name="mainInit">
<div class="teaContainer">
    <h1 class="superJumboHeader">Tea</h1>
</div>




模板助手:

$(document).ready(function(){
    // If the user doesn't click on Tea within 3 seconds of arriving, shake the word
    setTimeout(function () {
        var teaCont = $(".teaContainer");
        TweenMax.to(teaCont, 1, {css:{"margin-top":"25%"}, ease:Power3.easeOut});
    }, 3000);
});


jQuery的运行没有错误,但是我得到了:


未捕获的ReferenceError:未定义TweenMax。


我想知道为什么找不到TweenMax但可以找到JQuery吗?

谢谢。

最佳答案

我尝试在GSAP论坛上回答相同的问题:http://forums.greensock.com/topic/9575-using-greensock-with-meteor/#entry38773

为了能够从CDN加载GSAP,您需要安装名为“外部文件加载器”的Meteor插件。

采用:

mrt add external-file-loader


安装插件。

这是您需要的方法:
方法
loadJs(url,callback,timeoutDelay)-从URL加载外部JS。加载网址后即会调用回调。 TimeoutDelay是超时之前的延迟,以毫秒为单位。 Callback和timeoutDelay是可选的。该方法返回一个jQuery Promise。
如果使用Iron路由器,最好将外部脚本加载到waitOn()函数上,以确保它们在页面加载之前已加载。
如果您不使用Iron-Router,则可以在Template.created()回调中使用外部文件加载器加载GSAP CDN。

Template.Templatename.created = function() {
Meteor.Loader.loadJs("//cdnUrl");
}


您也可以加载多个脚本。我已经为我使用的流星亲自创建了一个本地GSAP插件。那是因为我有Greensock的高级会员。我将看看是否可以在Github上安装免费版本的GSAP插件。

希望对您有所帮助

普兰尼:)

关于jquery - 与 meteor 一起使用Greensock,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23769703/

10-11 08:27