2014-10-27 35 views
0

几天来,我一直试图在我使用Adobe Livecycle Designer创建的动态PDF中包含实际的Moment.js库。在LiveCycle Designer中包含Moment.js

我们已经使用了一个较旧的版本(1.7.2),没有任何问题,但现在我只能得到一个'Function not exist'错误。

有没有人有这方面的经验?

在此先感谢。

回答

0

我会先检查:

  • 确保您的脚本试图从中调用函数之前完全加载。 (检查事件,在哪里调用函数计算,表单:readty等)
  • 检查脚本引用。正确的道路?正确的名字?
  • 检查功能是否真的存在
  • 检查功能参数。
3

如何包括Moment.js在一个Adobe的LiveCycle形式:

  1. 下载缩小的脚本
  2. 在LiveCycle Designer中打开表单并创建一个脚本对象调用MOMENTJSMIN
  3. 复制的精缩脚本导入该脚本对象
  4. 在LiveCycle Designer的脚本编辑器窗口中,按以下方式编辑MOMENTJSMIN脚本对象:
  5. 删除所有脚本直到但不包括第二个大括号{:

    !function(a,b){"object"==typeof exports&&"undefined"!=typeof module?module.exports=b():"function"==typeof define&&define.amd?define(b):a.moment=b()}(this,function() 
    
  6. 从精缩脚本

  7. 的末尾删除圆括弧和分号这行添加到年初缩小的脚本:

    if (xfa.momentjs == undefined) xfa.momentjs = function() 
    
  8. 在MOMENTJSMIN脚本对象的脚本结束后添加此功能:

    现在210
    function getMomentJS(){ 
        return xfa.momentjs(); 
    } 
    

您MOMENTJSMIN脚本对象设置为整个形式提供给Moment.js脚本。

在任何脚本的使用Moment.js,这条线开始你的脚本对象或事件脚本:

var moment = MOMENTJSMIN.getMomentJS(); 

现在你可以在与该行启动脚本的任何地方使用力矩()。例如:

var moment = MOMENTJSMIN.getMomentJS(); 
var jan07 = moment([2007, 0, 29]); 
app.alert(moment().format("dddd, MMMM Do YYYY, h:mm:ss a")); 
app.alert(jan07.format("dddd, MMMM Do YYYY") + " was " + jan07.fromNow()); 
app.alert(moment.isDate(new Date())); 
相关问题