自定义组合框焦点不't shift选择elem和eventBubble不't停止.在IE中工作良好,但在
Custom ComboBox focus doesn't shift to select elem and eventBubble doesn't stop. Works fine in IE but not on others
这里我创建了一个自定义组合框,用户可以通过单击输入文本字段旁边的箭头图像或单击文本字段从下拉列表中选择值。
此代码在IE 11上运行良好。在谷歌浏览器上,当我点击箭头图像时,我可以从下拉列表中选择值。但是当我点击文本字段时,我无法选择值。
在这里,onclick事件被正确地触发,但输入文本(组合框)打开下拉列表,并且焦点不会转移到下拉列表。现在,由于焦点不在下拉菜单上,chrome的行为很奇怪,当我点击它时没有选择该选项。现在,当我试图通过编码到下拉列表来转移焦点时,输入onblur事件被触发,下拉列表关闭。
所以基本上它不会打开。
我在JSFiddle上尝试过,但在IE上无法复制。我建议你使用pastebin链接http://pastebin.com/aGmT0srm并在您的机器上进行测试。
JSFiddle链接
<select size="8" name="sel_vData_30" id="sel_vData_30" style="display:none;"
onblur="comboselect_onblur(vData_30,this)"
onchange="comboselect_onchange(this, vData_30)"
onkeyup="comboselect_onkeyup(13, this, vData_30)"
onclick="comboselect_onchange(this, vData_30)" >
<option value=""></option>
<option value="Office">Office</option>
<option value="Plant">Plant</option>
<option value="Sales">Sales</option>
<option value="Service Technician">Service Technician</option>
<option value="Transportation">Transportation</option>
</select>
我希望它能在跨浏览器上运行,尤其是在Chrome上。
欢迎任何见解或建议。
谢谢!
但当我点击文本字段时,我无法选择价值观
从<input>
中删除onblur="combotext_onblur(vData_30,sel_vData_30)"
可修复所述的IE 11
、FF 38
和Chrome 43
问题。
工作小提琴:https://jsfiddle.net/n0369z7j/6/
您可以通过自定义代码实现这一点,但这相当复杂,因为浏览器兼容性很难照顾到默认表单元素。
最好使用已经测试和维护过的js插件,如:
http://select2.github.io/examples.html
您的代码将更加干净和高效。
相关文章:
- Target=_blank don'我不在mozilla和IE工作
- jQUery Code没有'我不在IE工作
- 为什么这个书签脚本是't在IE工作
- 类构造函数super()没有'我不在IE工作
- onmousemove=null不会'我不在IE工作
- execCommand('另存为',true,'data.csv');不在IE工作
- 努力让第n个有悬停的孩子在IE工作
- Javascript Groovy按钮没有'我不在IE工作
- 属性='值'jquery选择没有'我不在IE工作
- atob不在IE工作
- 将图像附加到富文本编辑器dosen'我不在IE工作
- javascript没有'I don’我一直在IE工作
- 使用插件制作移动滑动导航,但它没有'我不在IE工作
- Video.js没有'我不在FF、IE工作
- dojo on.emit”;点击“;以及“;改变“;不在IE工作
- 为什么这个工具提示没有'不在IE工作吗?错误:应为对象
- document.getElementById('a').click()没有't在IE工作
- 插入符号插件的jquery;我不在IE工作
- 聚合物:点击事件在IE工作,但不是Chrome.如何修复
- 如何使IE工作预期与正则表达式提供的函数参数在拆分函数