我尝试使用Javascript DOM
。我需要获取信息(数据内容),按class
搜索。
网站的HTML是:
<li class="item info-icon info-icon-phone">
<strong itemprop="telephone" class="phone-place js-expansible-text js-phone-tracker display-phone_ad" data-content="(19) 3879-1066 / (19) 3879-1066" data-style_class="clickable" data-place_id="76588JTY">(19) 3879-1066 / (19) 3879-1066</strong>
</li>
我的代码不起作用:
var script = document.getElementsByClass('phone-place js-expansible-text js-phone-tracker display-phone_ad');
答案 0 :(得分:2)
var script = document.getElementsByClassName('phone-place js-expansible-text js-phone-tracker display-phone_ad');
http://www.w3schools.com/jsref/met_document_getelementsbyclassname.asp
答案 1 :(得分:2)
我相信你要找的函数是getElementsByClassName。 What do querySelectorAll, getElementsByClassName and other getElementsBy* methods return?
答案 2 :(得分:1)
您可以使用getAttribute()方法检索元素属性。
在这种情况下,您可以使用以下内容来获取数据内容属性:
var elements = document.getElementsByClassName('phone-place js-expansible-text js-phone-tracker display-phone_ad');
var dataContent = elements[0].getAttribute('data-content');
getElementsByClassName
返回一个匹配元素数组,您可以将其替换为getElementByClassName
并返回单个元素,如果您只需要一个元素,这是首选。在我的示例中,您将看到在调用getAttribute()之前需要引用数组elements[0]
中的第一个元素
而是使用getElementByClassName执行以下操作:
var element = document.getElementByClassName('phone-place js-expansible-text js-phone-tracker display-phone_ad');
var dataContent = element.getAttribute('data-content');