我有以下jQuery脚本,Internet Explorer(7和8)实际上忽略了它。它在FF和Chrome中运行正常。
<script type="text/javascript" language="javascript">
$("body").addClass("newclass");
</script>
这很简单,但我不知道IE为什么会忽略它。知道代码是作为JAVA的动态内容加载的(这应该不是问题,因为其余的脚本工作)。我试图将tha脚本作为外部文件中的函数调用,但也没有任何反应。任何人都可以帮我理解我的错误在哪里?还是帮我理解IE?
答案 0 :(得分:8)
或许在文件的'ready'事件中会更好
$(document).ready(function() {
$('body').addClass('newclass');
});
答案 1 :(得分:0)
如果这是问题,我确定您在Firefox和Chrome中也会出现问题,但请尝试
$(function () {
$('body').addClass('newclass');
});
只是为了确保在加载文档后调用它。也许IE需要它。
答案 2 :(得分:0)
将其包裹在$(document).ready(function(){ ... });
这样,只要页面满载,JQuery就会运行它。
如果你不这样做,代码将尽快执行,这可能是在DOM加载之前,所以你可能没有一个body元素来添加类。
某些浏览器工作而其他浏览器不会暗示不同的浏览器(a)以不同的速度加载页面,和/或(b)以不同的顺序执行初始加载任务。但你不应该担心这一点。只需致电$.ready()
,JQuery就会按照正确的顺序完成。