为了账号安全,请及时绑定邮箱和手机立即绑定

如何以编程方式告诉HTML选择下拉(例如,由于鼠标切换)?

如何以编程方式告诉HTML选择下拉(例如,由于鼠标切换)?

慕姐8265434 2019-06-14 15:37:38
如何以编程方式告诉HTML选择下拉(例如,由于鼠标切换)?如何以编程方式告诉HTMLselect下降(例如,由于鼠标移动)?
查看完整描述

3 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

这在HTML+Javascript中是可能的,尽管其他地方的人都说它是不可能的。

然而,这只适用于Chrome。如果你感兴趣的话,多读一些。


根据W3C HTML 5工作草案,3.2.5.1.7节。交互内容:

HTML中的某些元素具有激活行为,这意味着用户可以激活它们。这将触发一系列依赖于激活机制的事件[.]例如,使用键盘或语音输入,或通过鼠标单击.

当用户以不同于单击的方式触发具有定义激活行为的元素时,交互事件的默认操作必须是运行对元素进行合成单击激活步骤。

<select>作为一个交互式内容,我认为可以编程显示其<option>在玩了几个小时后,我发现document.createEvent().dispatchEvent()起作用了。

就是说演示时间到了。这是一个工作服。


HTML:

<select id="dropdown">
    <option value="Red">Red</option>
    <option value="Green">Green</option>
    <option value="Blue">Blue</option></select><br><button id="fire" type="button" onclick="runThis()">Show dropdown items</button>

JavaScript:

// <select> element displays its options on mousedown, not click.showDropdown = function (element) {
    var event;
    event = document.createEvent('MouseEvents');
    event.initMouseEvent('mousedown', true, true, window);
    element.dispatchEvent(event);};// This isn't magic.window.runThis = function () { 
    var dropdown = document.getElementById('dropdown');
    showDropdown(dropdown);};

如果有人想办法做同样的事,但在Chrome上却没有,请随意修改这把小提琴。..


查看完整回答
反对 回复 2019-06-14
  • 3 回答
  • 0 关注
  • 512 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信