Safari 5.0.5 中出现 jQuery 语法错误,但 5.0.6 或 5.1 中没有
这很奇怪 - 由于“语法错误”,我页面上的一个脚本在 Safari 5.0.5 中被破坏,但相同的脚本在另一台运行 Safari 5.0.6 的计算机和第三台运行 Safari 5.1 的计算机上运行良好。
我无法分享完整的脚本,但有问题的行是:
$("").attr({href: "#", "data-id": value.aid, class: "artist"}).text(value.artist).wrap("").parent(). fadeIn(“快速”).appendTo(列表);
确切的错误是:
SyntaxError: parse error
我使用的是当前版本 jQuery 1.7.1,它被列为与 Safari 5.0.x 兼容。
鉴于该脚本在较新版本的 Safari 中运行良好,您知道“解析错误”是什么吗?
This is bizarre - a script on my page is breaking in Safari 5.0.5 due to a "syntax error," but the same script works perfectly on another machine running Safari 5.0.6, and a third machine running Safari 5.1.
I can't share the full script, but the line in question is:
$("").attr({href: "#", "data-id": value.aid, class: "artist"}).text(value.artist).wrap("").parent().fadeIn("fast").appendTo(list);
The exact error is:
SyntaxError: parse error
And I'm using jQuery 1.7.1, the current version, which is listed as compatible with Safari 5.0.x.
Any ideas what the "parse error" would be, given that the script does work fine in newer versions of Safari?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试引用“类”。它是一个保留字。
请参阅 http://api.jquery.com/attr/ 以及其中的警告:
警告:设置“class”属性时,必须始终使用引号!
Try quoting "class". It is a reserved word.
See http://api.jquery.com/attr/ and the warning there:
WARNING: When setting the 'class' attribute, you must always use quotes!
我明白了 - 我没有在
attr()
中添加类,而是这样做:$("").attr({href: "#", "data-id": value.aid}).addClass("艺术家").text(value.artist).wrap("").parent() .fadeIn("快速").appendTo(列表);
@Ustun,我想你的方法也行。
I got it - instead of adding the class inside
attr()
, I did it like this:$("").attr({href: "#", "data-id": value.aid}).addClass("artist").text(value.artist).wrap("").parent().fadeIn("fast").appendTo(list);
@Ustun, I imagine your way would work too.