Javascript MutationObserver会检测通过外部样式表加载的更改吗?

Javascript MutationObserver会检测通过外部样式表加载的更改吗?,javascript,android-webview,mutation-observers,external-js,Javascript,Android Webview,Mutation Observers,External Js,我已经将mutationObserver添加到由类名标识的div中。下面给出了代码片段 var target = document.getElemenstsByClassName('uniqueClassName')[0]; var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver; var observer = new Mutat

我已经将mutationObserver添加到由类名标识的div中。下面给出了代码片段

var target = document.getElemenstsByClassName('uniqueClassName')[0];

var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver;

var observer = new MutationObserver(function(mutation){
console.log('mutation happened');});

var config = {attributes:true};

observer.observe(target,config);
HTML页面有一个外部样式表,其中保存了我们的目标div的一些样式,如下所述

.uniqueClassName{
  height: 468px;
  width: 549px;
  margin-top: 0px;
  margin-left: 0px;
  position: absolute;
  z-index: 0;
  background-image: url("../images/page007.jpg");
  background-size: cover;
} 
我们需要在加载内容后获取图像的URL。但是突变观察者内部的语句没有被调用(目前是一个日志)

HTML代码:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<link rel="stylesheet" type="text/css" href="../css/font.css"/>
<link rel="stylesheet" type="text/css" href="../css/page004005.css"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=549, height=468"/>
<title>page004005</title>

</head>
<body>
<div class="page">
<div class="page">
<div class="uniqueClassName">

<article class="page_7_block_0">
</article>
</div>
</div>
</div>
</body>
</html>

第004005页

由于您尚未发布html div代码,因此很难确定问题的确切原因。但是,请尝试将
characterData:true
添加到配置中。您的
config
没有
子树:true
,因此它只报告节点本身的HTML属性。无论如何,CSS是不相关的,不能由MutationObserver处理,除非根据您使用的配置在
style=“…”
HTML属性中指定。@Agalo我已经添加了HTML代码。请看一看。@wOxxOm是否有其他方法可以识别外部js加载何时完成?这取决于该文件的加载方式。这个问题有很多答案,你可以通过谷歌搜索或类似的网站轻松找到。