我目前正在为我的一个客户建立一个基于Wordpress的网站。长话短说:
我需要用javascript修改一些文本,就像我做过很多次一样。然而,这一次它就不起作用了..这是我通过网站上的element inspect控制台使用的代码:
target = document.querySelector('sc_services_item_content p')
target.innerHTML = "Paragraph text changed!"
这个网站是http://sifaclinic.nl/wordpress/tr_TR/therapieen/的,如果任何人能够成功地改变文本,你将是一个真正的救世主!在需要更改的段落下面。
发布于 2017-03-12 08:20:55
document.querySelector
返回与指定的CSS选择器匹配的第一个元素,但是您似乎正在查找第三个索引,即索引2。
最好的方法是使用document.querySelectorAll(.sc_services_item_description p)[2]
,它返回一个包含.sc_services_item_description
和p
的元素数组,并访问索引2。
发布于 2017-03-12 08:23:07
如果希望匹配页面上的多个元素,请使用querySelectorAll
而不是querySelector
。
querySelector
只匹配找到的第一个元素。
querySelectorAll
返回一个数组行对象,您可以迭代该对象并选择具有指定index
的元素-在您的特定情况下-我假设它是2
-并更改它的属性,例如innerHTML
属性。
var target = document.querySelectorAll('.sc_services_item_description p')
target[2].innerHTML = 'Changed!';
<div class="sc_services_item_description">
<p>First element</p>
<p>Second element</p>
<p>Third element</p>
</div>
https://stackoverflow.com/questions/42742224
复制相似问题