Javascript Internet Explorer 10和11在聚焦输入时删除占位符文本

Javascript Internet Explorer 10和11在聚焦输入时删除占位符文本,javascript,html,internet-explorer,Javascript,Html,Internet Explorer,使用Internet Explorer 10和11时,如果使用autofocus属性聚焦输入,则会删除输入占位符文本。例如: <input type="textbox" value="" placeholder="Example text" autofocus> 演示: 如何确保未删除占位符文本 参考:参考链接中的参考链接 看一看。也将支持IE6!但是我不确定它是否能够开箱即用,因为IE10应该支持占位符属性,所以请检查jQuery.fn.placeholder.input是否

使用Internet Explorer 10和11时,如果使用
autofocus
属性聚焦输入,则会删除输入占位符文本。例如:

<input type="textbox" value="" placeholder="Example text" autofocus>

演示:

如何确保未删除占位符文本

参考:参考链接中的参考链接

看一看。也将支持IE6!但是我不确定它是否能够开箱即用,因为IE10应该支持
占位符
属性,所以请检查
jQuery.fn.placeholder.input
是否为
true
(更多信息请参阅)。如果是,插件将不会做任何事情,因此您可能需要覆盖其检查行为


令人惊讶的是,该漏洞仍然处于活动状态。

找到了一个仅使用css的解决方案。

PS:With输入:valid+。伪占位符{display:none}ie被冻结

<input type="text" pattern=".+" required="" />
<span class = "fakePlaceholder">Fake placeholder />

input {
    position: relative;
    top: 0;
    border: 1px solid #999;
    z-index: 1;
}
.fakePlaceholder{
    color: #7D838A;
    position: absolute;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: 100%;
    pointer-events: none;
    left: 0;
    z-index: 1;
    padding-left: 10px;
}
input:valid {
    background-color: #FFFFFF;
    z-index: 2;
}

假占位符/>
输入{
位置:相对位置;
排名:0;
边框:1px实心#999;
z指数:1;
}
.伪造占位符{
颜色:#7D838A;
位置:绝对位置;
空白:nowrap;
文本溢出:省略号;
溢出:隐藏;
宽度:100%;
指针事件:无;
左:0;
z指数:1;
左侧填充:10px;
}
输入:有效{
背景色:#FFFFFF;
z指数:2;
}

我注意到了这一点;可惜他们没能提供修复。另外IE9,请看@KevinHakanson,我认为IE9略有不同。它根本不支持占位符,而10和11支持占位符。10和11只是以一种疯狂的方式处理它们(当输入被聚焦时,它们被移除)。你是正确的,这个答案链接到了在IE9、10和11中工作的多填充,以获得预期的行为