在 opera mini 中检测到占位符属性,但未使用

Placeholder attribute detected in opera mini, but not used

本文关键字:属性 未使用 占位符 opera mini 检测      更新时间:2023-09-26

我正在使用此代码来检查是否支持占位符属性:

function placeholderIsSupported() {
        var test = document.createElement('input');
        return typeof test.placeholder !== 'undefined';
    }

如果支持占位符属性,我将在此处隐藏代码中的标签:

//Remove labels, if the placeholder attribute is supported
    if (placeholderIsSupported()) {
        labels = document.getElementsByTagName("label");
        for (i = 0; i < labels.length; i++)
        {
            labels[i].style.display = "none";
        }
    }

但是,在 Android 版 Opera Mini 7.5 中,标签是隐藏的,即使不支持占位符也是如此。有什么想法可以解决这个问题吗?

不确定是否有帮助,但您可以尝试以下方法:

'placeholder' in document.createElement('input') && 'placeholder' in document.createElement('textarea');

这就是Modernizr进行检查的方式,在大多数情况下非常可靠。

无论如何,我认为你不应该重新发明轮子,有一些填充物可以为你完成这项工作。