Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何看到javascript修改了特定的HTML?_Javascript_Html_Debugging - Fatal编程技术网

如何看到javascript修改了特定的HTML?

如何看到javascript修改了特定的HTML?,javascript,html,debugging,Javascript,Html,Debugging,当我加载页面时,有一个样式属性已添加到标记中,而我的模板中没有该属性。如何发现javascript对其进行了哪些修改 为了清楚起见,body标签现在是: <body class="home page" style="margin-top: -43px;"> 因此,样式不是来自样式表。而模板根本不包含“style=”位。所以我很确定一些正在运行的javascript正在修改body标记 我可以使用Firefox/Firebug和Chrome Inspector。我曾尝试在“HTM

当我加载页面时,有一个样式属性已添加到
标记中,而我的模板中没有该属性。如何发现javascript对其进行了哪些修改

为了清楚起见,body标签现在是:

<body class="home page" style="margin-top: -43px;">

因此,样式不是来自样式表。而模板根本不包含“style=”位。所以我很确定一些正在运行的javascript正在修改body标记

我可以使用Firefox/Firebug和Chrome Inspector。我曾尝试在“HTML”/“Elements”视图中右键单击body标记并选择“break on attributes modification”(属性修改中断),但当我可以这样做时,已经发生了更改,并且中断点在重新加载页面后无法存活


我正在使用Django和jQuery,以防这会改变答案。

它也有可能被添加到服务器端。如果在源文件中搜索样式表名称,它应该出现在JavaScript或Python文件中。i、 e.grep代表“mystylefile.css”

您可以禁用JavaScript并查看它是否仍然被添加,如果您想缩小它的范围

更新


要找到为元素添加边距顶部的内容将更加困难!您可以在JavaScript文件中搜索“margin top”并查看返回的结果数量,或者逐个添加JavaScript文件,直到添加为止。

我目前使用Firebug的一个扩展名为FireDiff您可以在此处提交其主页:

您可以使用。
尝试将此代码添加为页面加载时执行的第一件事:

var target = document.querySelector('body'),
    observer = new MutationObserver(function(mutations) {
        mutations.forEach(function(mutation) {
            debugger;
        });
    });
  
observer.observe(target, { attributes: true });

作为补充说明,如果这种特殊的断点在重新加载页面后仍然存在,那就太好了。

只需在*.js或搜索源中搜索样式属性?(例如,如果是背景色,请在任何脚本中查找
backgroundcolor
background color
)“属性修改中断”应在重新加载页面后仍然有效。我刚刚在Chrome上测试过这个。不过,我对这些断点了解的不多,因此无法进一步评论。只有在重新加载页面后将焦点放回开发人员控制台后,断点才会启动。奇怪的试着把它放在这个页面的一个标签上。它被直接添加到HTML中,而不是样式表中-我会编辑这个问题来澄清。如果所有其他操作都失败了,你可以一个一个地添加JavaScript文件,直到它出现-然后你知道是哪个文件添加了它。搜索JavaScript以查找“页边空白顶部”最终找到了罪魁祸首-感谢你提醒我,好老grep(well ack)是我的朋友。我相信他们在Chrome中有,但他们不会在页面开始加载时触发。在开发人员面板开始工作之前,我必须关注它(通过点击元素选项卡,例如)