我有2个元素:
< span id =“button”onmousedown =“mouseDown()”>标签< / span>
<选择>
<选项→1< /选项>
<选项→2< /选项>
<选项→3< /选项>
< /选择>
我想在单击span元素时触发select元素以显示其列表。我只能使用JavaScript(没有JQuery)来实现这一目标。
到目前为止我已经尝试过
mousedown函数{
var btn = getElementById(“button”);
btn.nextSibling.click()
}
和:
mousedown函数{
function eventFire(el,etype){
if(el.fireEvent){
el.fireEvent('on'+ etype);
} else {
var evObj = document.createEvent('Events');
evObj.initEvent(etype,true,false);
el.dispatchEvent(evObj);
}
}
eventFire(btn.nextSibling,'click');
}
但一直未能成功。
如果我做
mousedown函数{
的console.log(btn.nextSibling);
}
这确实返回了正确的元素,所以我知道我的目标是正确的。它只是没有响应.click();或eventFire功能。
谁会知道为什么会这样?
(如果需要,我可以包括mousedown函数的其余部分,但是它很大并且为了这一部分而复杂,仍然可以作为正常的onmousedown工作)