0

该代码工作正常,但是当我使用 JSLint 进行验证时,它给了我以下错误

var serializer = new XMLSerializer();

JSLint 错误:在定义之前使用了 XMLSerializer。

var serializer = window.XMLSerializer();

上面的代码在 IE 和 Firefox 中运行良好,并且不会抛出 JSLint 错误。但它在 Chrome 中不起作用。功能如下:

this.XMLtoString = function (elem) {

        var serialized;
        try { 
            var serializer = window.XMLSerializer();
            serialized = serializer.serializeToString(elem);
        }
        catch (e) {
            //Internet Explorer has a different approach to serializing XML
            serialized = elem.xml;
        }

        return serialized;
    };

我还尝试在函数上方添加以下行。它没有帮助 /* global XMLSerializer */

请帮助编写一个使用 XMLSerializer 且没有 JSLint 错误且适用于所有浏览器的函数。

4

1 回答 1

1

如果您使用,它在 Chrome 中对我有用:

var serializer = window.XMLSerializer();

或者,您可以使用原始new XMLSerializer();代码,然后将此指令放在文件顶部:

/*global XMLSerializer */

和之间不能有空格(人们说 JSLint 很挑剔,这不是在开玩笑!)。/*global

于 2013-04-24T09:06:27.897 回答