我生成的下拉菜單適用於Firefox和IE,但不適用於Google Chrome。我有javascript下拉菜單不適用於Chrome(事件問題?)
function characterList(){
//code removed that generates select list
var optionContainer = document.createElement("option");
optionContainer.innerHTML = "Show All Character Lines";
addEvent(optionContainer, "click", filterChar, false);
selectContainer.appendChild(optionContainer); //appends option to select menu
for (var i = 0; i < menu_lines; i++){
var optionContainer1 = document.createElement("option");
optionContainer1.innerHTML = "blah" //simplified so that names in menu are all "blah"
selectContainer.appendChild(optionContainer1);//appends option to select menu
addEvent(optionContainer1, "click", filterChar, false);//I think the problem is here.
}
}
function filterChar(){
alert("filterChar");
}
function addEvent(object, evName, fnName, cap) {
if (object.attachEvent)
object.attachEvent("on" + evName, fnName);
else if (object.addEventListener)
object.addEventListener(evName, fnName, cap);
}
characterList使用從HTML文件的h3標題獲取的名稱填充(選擇選項類型的)下拉菜單。這工作正常。問題在於Google Chrome filterChar不會在下拉菜單中進行點擊。我有一個給我的函數(attachEvent),它應該是所有瀏覽器兼容的。請有人幫忙。
您可以在重現問題的同時最小化代碼嗎? – tobspr
@Tobias Springer:我試圖簡化它。剩下的基本上就是創建每個選項。 – user963070
@ user963070 Chrome應該在javascript控制檯(F12或rightclick> inspect元素)中確切地告訴你問題是什麼。 – Stecman