HTML5输入类型占位符在IE中不起作用

我为我的一个项目使用了HTML5。 在那里我使用输入占位符属性来显示一些默认文本。 它不适用于IE。 任何解决方案?


直到IE 10才支持占位符。

http://caniuse.com/#feat=input-placeholder

你可以在IE中使用polyfill来支持它。


如果你在你的项目中使用JavaScript,你可以添加这样的代码,它会通过javascript为你的输入提供一个占位符。

function supports_input_placeholder() {
        var i = document.createElement('input');
        return 'placeholder' in i;
    }

if (!supports_input_placeholder()) {
    var fields = document.getElementsByTagName('INPUT');
    for (var i = 0; i < fields.length; i++) {
        if (fields[i].hasAttribute('placeholder')) {
            fields[i].defaultValue = fields[i].getAttribute('placeholder');
            fields[i].onfocus = function () { if (this.value == this.defaultValue) this.value = ''; }
            fields[i].onblur = function () { if (this.value == '') this.value = this.defaultValue; }
        }
    }
}

请参阅此主题的最佳答案,因为它有非常好的解释:为Internet Explorer输入占位符

链接地址: http://www.djcxy.com/p/70557.html

上一篇: HTML5 input type placeholder is not working in IE

下一篇: Change placeholder input type text to password on focus jquery