jQuery removeClass onload在IE7中不起作用

时间:2011-11-18 16:46:17

标签: jquery

我正在尝试使用removeClass()删除我的html中的现有类,它在IE8和Firefox中运行良好但在IE7中失败。当我在IE7中看到源代码时,该类仍然存在。以下是我的代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US"> 
<head>
    <script type="text/javascript" src="common/js/libs/jquery/jquery-1.3.2.js" ></script>
    <script type="text/javascript">
        $(function(){
            $('#testdiv p').removeClass('testclass')
        });
    </script>
</head>
<body>
    <div id="testdiv">
        <p class="testclass">This is some test. on pageload, the class should be removed.</p>
    </div>
</body>
</html>

当我在IE7中看到源代码时,我仍然看到该类: IE7呈现:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US"> 
<head>
    <script type="text/javascript" src="common/js/libs/jquery/jquery-1.3.2.js" ></script>
    <script type="text/javascript">
        $(function(){
            $('#testdiv p').removeClass('testclass')
        });
    </script>
</head>
<body>
    <div id="testdiv">
        <p class="testclass">This is some test. on pageload, the class should be removed.</p>
    </div>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

查看页面源与实际检查对DOM所做的更改不同。

如果要查看通过jQuery进行的更改,请使用DOM检查器中内置的浏览器检查DOM。

在大多数浏览器中右键单击,在IE7 / 8/9中使用F12,在FireFox中使用FireBug。

答案 1 :(得分:0)

这是非常正确的。 jQuery将浏览器呈现的DOM(文档对象模型)更改为基于源的屏幕。源本身永远不会改变。

要查看DOM的内容,请使用Firefox的Firebug扩展,或者在IE中按F12打开开发人员工具。还有其他方法可以在其他浏览器中查看DOM,但这是两种最常见的方式。