你好我想通過鼠標懸停在上面得到類名。所有我現在得到懸停是類名:[objectHTMLCollection]。 我使用這個代碼在HTML:的onmouseover = 「類(這)」Javascript類名不會出現
function class() {
var x = document.getElementsByClassName("abc");
x[0].innerHTML = "Class name" + x + " ";
}
你好我想通過鼠標懸停在上面得到類名。所有我現在得到懸停是類名:[objectHTMLCollection]。 我使用這個代碼在HTML:的onmouseover = 「類(這)」Javascript類名不會出現
function class() {
var x = document.getElementsByClassName("abc");
x[0].innerHTML = "Class name" + x + " ";
}
我使用這個代碼在HTML:的onmouseover = 「類(這)」
在這種情況下,你應該爲你的函數聲明一個參數並使用它。元素的當前設置類名(S)是可以從它的className
屬性:
function showClass(element) {
element.innerHTML = "Class name " + element.className;
}
另外請注意,我改變了函數的名稱。 class
是JavaScript中的關鍵字,不能將其用作標識符。 (您需要accodingly更新onmouseover
。)
不要使用任何的reserved keywords在代碼名稱函數,變量等
你得到[objectHTMLCollection]
爲toString()
方法的結果是被隱式調用時您正在嘗試通過執行"Class name" + x + " ";
將x
(這是對象)轉換爲字符串。改爲使用x[0].className
。
問題中代碼中的'x.className'將被定義爲'undefined.' –
確實,我錯過了他正在獲取一個集合。 –
這是因爲'getElementsByClassName'選擇*集合*,而不是*元素*。 –
http://stackoverflow.com/help/how-to-ask –
@ Quasimodo'sclone:公平地說,上面的代碼的一半處理正確。 :-) –