首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何通过角色javascript获取div内容

如何通过角色javascript获取div内容
EN

Stack Overflow用户
提问于 2018-05-31 16:10:09
回答 2查看 2.7K关注 0票数 -3

我正在尝试从facebook dom获取feed内容。

代码语言:javascript
复制
<div role="feed">

所以我这么做了:

代码语言:javascript
复制
querySelectorAll($("div[role='feed']"))

如下所示:get div by role,但它返回undifend结果。我尝试了一些更类似的方法,但仍然没有成功。

有可能获得这些数据吗?谢谢

EN

回答 2

Stack Overflow用户

发布于 2018-05-31 16:12:18

请删除$。它不是必需的,可能会抛出undefined错误。你是在页面加载后运行吗?你正在使用.innerHTML来获取超文本标记语言的内容吗?这对我来说很有效:

代码语言:javascript
复制
<div role="feed">Hello</div>
<script>
console.log(document.querySelector('div[role="feed"]').innerHTML);
</script>

如果在页面加载后没有运行,请将代码放在window对象的onload事件中。

你应该这样修改你的代码:

代码语言:javascript
复制
<script>
// Loading script before element.
window.onload = function () {
  console.log(document.querySelector('div[role="feed"]').innerHTML);
}
</script>
<div role="feed">Hello</div>

如果你在元素之前加载脚本,这是可行的。

票数 1
EN

Stack Overflow用户

发布于 2018-05-31 16:14:31

使用jQuery,您不需要querySelectorAll()来获取DOM,您可以使用$("div[role='feed']")来实现这一点。因为您使用的是querySelectorAll(),所以它接受必须是有效CSS选择器字符串的字符串;如果不是,则抛出SyntaxError异常。由于您使用了错误的语法,它将返回undefined。

在jQuery中获取div的内容需要使用text()函数。text()获取匹配元素集合中每个元素的组合文本内容,包括它们的后代元素,或者设置匹配元素的文本内容。

代码语言:javascript
复制
console.log($("div[role='feed']").text());
console.log($("div[role='feed']"));
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div role="feed">
so i did that:
</div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50619633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档