使用JavaScript,我们可以使用以下语法通过id获取元素:
var x=document.getElementById("by_id");
我尝试以下按类获取元素:
var y=document.getElementByClass("by_class");
但这导致了错误:
getElementByClass is not function
如何按类获取元素?
DOM函数的名称实际上getElementsByClassName
不是getElementByClassName
,仅仅是因为页面上的多个元素可以具有同一类,因此:Elements
。
此方法的返回值将是NodeList实例,或者是NodeList
(FF的超集,例如返回的实例HTMLCollection
)。无论如何:返回值是一个类似于数组的对象:
var y = document.getElementsByClassName('foo');
var aNode = y[0];
如果由于某种原因需要返回对象作为数组,则由于其不可思议的length属性,您可以轻松地做到这一点:
var arrFromList = Array.prototype.slice.call(y);
//or as per AntonB's comment:
var arrFromList = [].slice.call(y);
正如yckart所建议的那样querySelector('.foo')
,querySelectorAll('.foo')
它将是更可取的,因为根据caniuse.com的确,它们得到了更好的支持(93.99%vs87.24%):
问题内容: 我想知道是否有一种功能或某种与之等效的方法。 问题答案: 您的函数名称中缺少。返回元素的集合,这些元素需要迭代: IE8及以下版本不支持,因此您必须找到一个polyfill或使用(IE8)。
问题内容: 我正在尝试通过angularjs在html中查找元素。 这是html: 我试图通过类名多文件来获取按钮元素,然后我尝试 但是它不起作用,并且尝试过,但仅对标签起作用。 在angularjs中,有没有可以通过ID或类名获取元素的函数? 问题答案: 是DOM文档上的函数。它既不是jQuery也不是jqLite函数。 使用时不要在类名前添加句号: 将其包装在jqLite中(如果在An
问题内容: 我正在使用PHPDOM,并且试图在DOM节点中获取具有给定类名的元素。获得该子元素的最佳方法是什么? 更新: 我最终使用了PHP,它更容易使用。 问题答案: 更新:CSS选择器的Xpath版本 因此,在下面我回应hakre的评论之后,我感到好奇,并调查了后面的代码。看起来上面的选择器已编译为以下xpath(未经测试): 所以PHP将是: 基本上,我们在这里所做的就是规范化属性,以便即使
问题内容: 如果我知道文本标签包含什么,如何在html页面中获取标签。例如: 问题答案: 您将不得不手动遍历。
对不起,这是一个基本的,但我尝试在谷歌搜索无论如何,但仍然没有获得成功。
问题内容: 我在Eclipse中编写了一个应用程序,该应用程序已成功编译并运行。之后,在相应的目录中找到 .java和 .class文件。然后,我删除了* .class文件,现在我不知道该如何找回它。 Eclipse写道:“未编写类文件。如果这样,请尝试刷新此项目并进行构建,该项目可能会不一致”。 通过右键单击该项目,我得到了一个下拉菜单,在其中我找到了“刷新”,但找不到如何“构建”该项目。 那么