Javascript:“[classname]未定义”错误

时间:2013-10-04 15:02:36

标签: javascript mootools undefined

当我找到这个插件时,我正在寻找一个图片裁剪插件:Lasso.Crop。我想尝试代码示例,但是通过使用提供的代码示例和他们使用的相同文件,我从来没有能够使它在本地工作,并且我总是有错误“Lasso未定义”:

new Lasso.Crop('bee',{
    ratio : false,
    preset : [235,140,505,340],
    min : [50,50],
    handleSize : 8,
    opacity : .6,
    color : '#7389AE',
    border : '/images/crop.gif',
    onResize : updateCoords
});

我从未设法让它发挥作用。 几个小时前我尝试了另一个插件:UvumiTools Crop,出现了类似的问题。该演示在他们的网站上完美运行,但我在他们的网站上下载的演示档案在本地不起作用。这里的错误与前一个非常相似:“uvumiCropper未定义”(uvumiCropper是插件中定义的类)。

我不明白为什么我一直得到“[...]未定义”错误,而代码实际上定义了这样的类或函数是以前导入的javascript文件。

也许我做错了什么,我不知道,但我已经浪费了很多时间,所以欢迎每一条建议。

UvumiTools Cropper的演示档案可以在此page下载。

由于

1 个答案:

答案 0 :(得分:4)

在mootools之后,您需要按顺序加载两个文件:

<script type="text/javascript" src="Lasso.js"></script>
<script type="text/javascript" src="Lasso.Crop.js"></script>

Lasso会将Lasso构造函数导出到全局对象。 Lasso.Crop会将Crop属性添加到Lasso对象。它将尝试Extend基类Lasso类。你不能只加载Lasso.Crop.js并希望它能正常工作

请记住,这是4年之久,为MooTools 1.2编写,除非您使用-compat build,否则可能不适用于1.4.5。 Nathan White没有做过任何MooTools工作约3年(我知道)。