解决js书写不规范引起的Expected identitifier,string or number

  这几天一直在写项目,今天需要完成一个ajax的上传图片的任务,百度了别人的代码,然后在vs运行,在ie9测试没有问题,但是作为程序员我还是比较谨慎的,在ietest中打开ie6、ie7竟然不行。报错了,如图:

但是我自己看一下,这个是js引起的错误,但是这个uploadify这个插件使用jquery写的,在jquery官网上写着tested for compatibility in IE 6.0+, Firefox 3+, Safari 3.1+, Opera 9.6+, and Google Chrome.那应该是兼容所有的ie6版本以上的,于是我利用搜索引擎开始解决问题了,最后发现了一边外国人写的遇到相同问题,这里是连接:http://www.nutt.net/2008/07/21/javascript-error-expected-identifier-string-or-number-in-ie/。原来不是jquery问题,也不是uploadify插件的问题,而是后来使用uploadify写的jquery的代码的问题,问题在于最后一个逗号,在ie8、ie9上是不会报错的,那是因为浏览器已经有识别这种错误但是能“兼容”的能力,但是ie6、ie7是没有这个能力的,所以就报错了。最后贴上写的jquery代码。

<script type="text/javascript">
        $(document).ready(function () {
            $("#uploadify").uploadify({
                'uploader': 'JS/jquery.uploadify-v2.1.0/uploadify.swf',
                'script': 'UploadHandler.ashx',
                'cancelImg': 'JS/jquery.uploadify-v2.1.0/cancel.png',
                'folder': 'UploadFile',
                'queueID': 'fileQueue',
                'auto': false,
                'multi': true                //这里是不应该加上逗号的
            });
        });
    </script>
posted @ 2012-07-31 17:35  唯吴独尊  阅读(7562)  评论(0编辑  收藏  举报