所以我有这段代码:
;
(function (g) {
var d = document, i, am = d.createElement('script'), h = d.head || d.getElementsByTagName("head")[0], aex = {
"src": '',
"type": "text/javascript",
"async": "true",
"data-vendor": "acs",
"data-role": "gateway"
};
for (var attr in aex) {
am.setAttribute(attr, aex[attr]);
}
h.appendChild(am);
g['acsReady'] = function () {
var aT = '__acsReady__', args = Array.prototype.slice.call(arguments, 0), k = setInterval(function () {
if (typeof g[aT] === 'function') {
clearInterval(k);
for (i = 0; i < args.length; i++) {
g[aT].call(g, function (fn) {
return function () {
setTimeout(fn, 1)
};
}(args[i]));
}
}
}, 50);
};
})(window);
当你在Firefox中通过控制台运行它时,它会抱怨
&#34; SyntaxError:期望表达式,得到&#39;&lt;&#39;&#34;
但是,当你在http://esprima.org/demo/validate.html中试用它时,它运作得很好......
它做错了什么?
答案 0 :(得分:4)
我认为这一行存在问题:
"src": '',
所以你本质上是一个空白的src。错误本身表明您获得了一些HTML响应,在这种情况下,显然浏览器只是尝试加载您当前所在的页面(观看网络面板)。但是,如果你只是想创建一个脚本标记,请尝试使用更有意义的src,或者完全不用它。