getElementsByClassName()在Chrome

时间:2017-08-30 23:24:28

标签: javascript google-chrome

我正在编写Chrome扩展程序,并尝试使用getElementsByClassName()获取类col-xs-6 col-sm-3的元素。 webpage source

在我的内容脚本中,我有行

var cells = document.getElementsByClassName("col-xs-6 col-sm-3");
for(var i = 0; i < cells.length; i++)
{
  console.log(cells[i]);
  // other code
}

然而,当我运行脚本时,控制台上没有显示任何内容。

我尝试了以下内容,希望能找到答案

var cells = document.getElementsbyId("div");
for(var i = 0; i < cells.length; i++)
{
  console.log(cells[i].className);
}

控制台显示了一个类名列表,但是我搜索的那些不在其中。

我应该如何尝试访问这些元素?

编辑:由于我搜索的div标签位于iframe内,我执行以下操作尝试访问它。

var iframe = document.getElementsByTagName("iframe")[0];
var innerDoc = iframe.contentDocument || iframe.contentWindow.document;
var cells = innerDoc.getElementsByClassName("col-xs-6 col-sm-3");

然而,在页面的控制台上,我收到了'未捕获的TypeError:无法读取属性'文件'未定义'的消息

我将带有iframe标签的元素集合的长度打印到控制台并得到0。

如何访问iframe?

0 个答案:

没有答案