我正在和现有的网站www.shopthethirdfloor.com上工作.使用IE,如果单击产品菜单,将焦点置于搜索框,然后滚动弹出的菜单覆盖下的搜索字段,搜索字段位于覆盖下,但光标继续闪烁隐藏输入字段的位置是.这只发生在IE中.搜索和产品显示也是iframe.我认为这是一个错误/功能,取决于您是用户还是微软.
解决方法
我在Internet Explorer团队工作,可以向您保证我们不会将其视为一项功能.这是一个简单而简单的错误.我已将此问题和您的网站添加到问题的内部故障单中,以便团队在下一次分类期间进行审核.
目前,您可以添加对document.documentMode的检查,并应用一些功能来阻止Internet Explorer在不相关的元素顶部显示插入符号.在下面的代码中,我使用jQuery的$.fn.one
方法在元素的.onFocus事件期间附加一次性使用处理程序,然后在窗口的.onScroll事件期间处理它:
if ( document.documentMode && document.documentMode < 12 ) { $( document ).on( "focus",":input",function ( event ) { $( window ).one( "scroll",function () { event.target.blur(); }); }); }
结果可以在这里看到:http://jsfiddle.net/yynsbrat/2/