我有一个以JSON响应中的注释notaiton开头的脚本。这会在runscirpts @eval(e.text)上的ie7中抛出语法错误;//运行脚本。
<script type="text/javascript"><!--
$(document).ready(function(){
//utils.normalizeColumnHeight($('.aboutus-filter-wrapper, .aboutdesc_wrapper,.right_box_wrapper'));
});
// --></script>我正在使用ie的runscripts执行脚本。这是这个代码
runScripts1: function(e) {
if (e.nodeType != 1) return false; //if it's not an element node, return
if (e.tagName.toLowerCase() == 'script') {
//alert(e.text);
eval(e.text); //run the script
}
else {
var n = e.firstChild;
while ( n ) {
if ( n.nodeType == 1 ) forrester.runScripts1(n); //if it's an element node, recurse
n = n.nextSibling;
}
}
return true;
},如何避免评论?
发布于 2011-10-24 19:22:04
您在Javascript代码片段中使用了无效的注释构造,而且,当起点存在时,无效注释上下文的关闭将被适当地注释掉。
那是,
<!-- comment -->构造在HTML//comment或/* comment */构造在Javascript浏览器可能根本不喜欢这一点。
如果你从某个地方的调用中得到这个脚本的响应,那么我会先看看source:你能控制输出吗?
如果是这样,请更改它以删除无效的内容。如果您是从服务调用/外部源获取此代码,我建议您根本不要这样做。不过,这可能是另一个问题的主题。
https://stackoverflow.com/questions/7874804
复制相似问题