Javascript错误未捕获异常

前端之家收集整理的这篇文章主要介绍了Javascript错误未捕获异常前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用一个名为pull.js的 javascript文件.它用于Ipad中的下拉刷新,但是,当我使用其他jquery和javascript停止工作?它给出了以下未捕获的异常错误


Error: uncaught exception:

[Exception… “Not enough arguments” nsresult: “0x80570001
(NS_ERROR_XPC_NOT_ENOUGH_ARGS)” location: “JS frame :: pull.js ::
anonymous :: line 26” data: no]

我正在传递此js文件内容

var PULL = function() {
    var content,pullToRefresh,refreshing,contentStartY,success,start,cancel,startY,track = false,refresh = false;

    var removeTransition = function() {
        //content.style['-webkit-transition-duration'] = 0;
    };
    return {
        init: function(o) {
            content = document.getElementById('content');
            pullToRefresh = document.getElementById('pull_to_refresh');
            refreshing = document.getElementById('refreshing');
            success = o.success;
            start = o.start;
            cancel = o.cancel;

            document.body.addEventListener('touchstart',function(e) {
                e.preventDefault();
                contentStartY = parseInt(content.style.top);
                startY = e.touches[0].screenY;
            });

            document.body.addEventListener('touchend',function(e) {
                if(refresh) {
                    //content.style['-webkit-transition-duration'] = '.5s';
                    content.style.top = '50px';

                    pullToRefresh.style.display = 'none';
                    refreshing.style.display = '';

                    success(function() { // pass down done callback
                        pullToRefresh.style.display = '';
                        refreshing.style.display = 'none';
                        content.style.top = '0';
                        content.addEventListener('transitionEnd',removeTransition);
                    });

                    refresh = false;
                } else if(track) {
                    //content.style['-webkit-transition-duration'] = '.25s';
                    content.style.top = '0';
                    content.addEventListener('transitionEnd',removeTransition);

                    cancel();
                }
                track = false;
            });

            document.body.addEventListener('touchmove',function(e) {
                var move_to = contentStartY - (startY - e.changedTouches[0].screenY);
                if(move_to > 0) track = true; // start tracking if near the top
                content.style.top = move_to + 'px';

                if(move_to > 50) {
                    refresh = true;
                } else {
                    //content.style['-webkit-transition'] = '';
                    refresh = false;
                }
            });
        }
    };
}();

谁能帮帮我吗.

解决方法

XPC错误不是来自调用像parseInt这样的纯Javascript方法(和radix参数)
是规范可选的,因此所有这些评论在很多方面都是错误的).

您在所有addEventListener调用上都是missing the third useCapture argument

这里:

document.body.addEventListener('touchstart',function(e) {
    ...
},false);  //<-- add third argument

这里:

content.addEventListener('transitionEnd',removeTransition,false);  //<-- add third argument

这里:

document.body.addEventListener('touchend',false);  //<-- add third argument

和这里:

document.body.addEventListener('touchmove',false); //<-- add third argument

请注意,在newer specification,the argument has been made optional.但这并不重要.

猜你在找的JavaScript相关文章