2 回答

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊
替換getElementByClassName為getElementsByClassName
請(qǐng)注意,它的復(fù)數(shù) ( Elements) 以“ s”結(jié)尾,而不是單數(shù) ( Element)
同一個(gè)類可以添加到多個(gè)對(duì)象,因此,按類名選擇會(huì)返回多個(gè)項(xiàng)目,而不僅僅是一個(gè),因此它使用復(fù)數(shù)形式Elements而不是元素,getElementById()因?yàn)?id 必須是唯一的,而按 id 選擇將只返回一個(gè) DOM 元素
并且,由于該函數(shù)getElementsByClassName返回的元素?cái)?shù)組elmnt.scrollIntoView()不起作用,
因此您需要使用數(shù)組的第一個(gè)元素作為elmnt[0]
所以你的代碼將是
function myFunction() {
var elmnt = document.getElementsByClassName("filter-btn");
elmnt[0].scrollIntoView();
}
但是,getElementById如果您只想選擇一個(gè)元素并使用如下(首先給IdGivenToTheAnchoreTag錨標(biāo)記提供 id ),我寧愿建議使用
function myFunction() {
var elmnt = document.getElementById("IdGivenToTheAnchoreTag");
elmnt.scrollIntoView();
}

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超8個(gè)贊
您正在尋找getElementsByClassName. 注意元素上的“s”
function myFunction() {
var elmnt = document.getElementsByClassName("filter-btn");
test.scrollIntoView();
}
添加回答
舉報(bào)