2

我有这个 javascript:

Modernizr.load([
    {
        test: Modernizr.canvas,
        nope: ['/assets/js/excanvas.js'],
        both: ['/assets/js/frank/pentool.js'],
        complete : function () {
            var cmo = new CutMeOut(settings);
        }
    }
]);

excanvas 中的这种加载应该不支持画布,并且在完成时应该触发“完成”功能。中的 CutMeOut 类pentool.js包含适用于画布元素的代码。但是,IE7 和 IE8 给出了这个错误:

Object doesn't support property or method

如果我只是正常加载excanvas该网站可以正常工作。var cmo = new CutMeOut(settings);那么,在 excanvas 解决问题后,我该如何运行呢?

谢谢。

4

1 回答 1

0

似乎是工作:

Modernizr.load([
    {
        load: '/assets/js/frank/pentool.js',
        complete: function() {

            if (!document.createElement('canvas').getContext) {
                Modernizr.load('/assets/js/excanvas.js');
            } else {
                var cmo = new CutMeOut(settings);
            }


        }

    },

    {

        complete: function() {
            if (!document.createElement('canvas').getContext) {
                window.addEvent('load', function() {
                    var cmo = new CutMeOut(settings);
                });
            }
        }
    }

]);
于 2012-12-07T14:20:37.017 回答