国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

HTML5 INPUT placeholder及兼容性處理

2024-08-26 00:14:47
字體:
來源:轉載
供稿:網友
  HTML5對Web Form做了許多增強,比如input新增的type類型、Form Validation等。Placeholder是HTML5新增的另一個屬性,當input或者textarea設置了該屬性后,該值的內容將作為灰字提示顯示在文本框中,當文本框獲得焦點時,提示文字消失。以前要實現這效果都是用JavaScript來控制才能實現: 

由于placeholder是個新增屬性,目前只有少數瀏覽器支持,如何檢測瀏覽器是否支持它呢?(更多HTML5/CSS3特性檢測可以訪問)

function hasPlaceholderSupport() {
  return 'placeholder' in document.createElement('input');
}

默認提示文字是灰色的,可以通過CSS來改變文字樣式:

 
/* all */::-webkit-input-placeholder { color:#f00; }input:-moz-placeholder { color:#f00; } /* individual: webkit */#field2::-webkit-input-placeholder { color:#00f; }#field3::-webkit-input-placeholder { color:#090; background:lightgreen; text-transform:uppercase; }#field4::-webkit-input-placeholder { font-style:italic; text-decoration:overline; letter-spacing:3px; color:#999; } /* individual: mozilla */#field2:-moz-placeholder { color:#00f; }#field3:-moz-placeholder { color:#090; background:lightgreen; text-transform:uppercase; }#field4:-moz-placeholder { font-style:italic; text-decoration:overline; letter-spacing:3px; color:#999; }

 

兼容其他不支持placeholder的瀏覽器:

var PlaceHolder = {
    _support: (function() {
        return 'placeholder' in document.createElement('input');
    })(),

    //提示文字的樣式,需要在頁面中其他位置定義
    className: 'abc',

    init: function() {
        if (!PlaceHolder._support) {
            //未對textarea處理,需要的自己加上
            var inputs = document.getElementsByTagName('input');
            PlaceHolder.create(inputs);
        }
    },

    create: function(inputs) {
        var input;
        if (!inputs.length) {
            inputs = [inputs];
        }
        for (var i = 0, length = inputs.length; i <length; i++) {
            input = inputs[i];
            if (!PlaceHolder._support && input.attributes && input.attributes.placeholder) {
                PlaceHolder._setValue(input);
                input.addEventListener('focus', function(e) {
                    if (this.value === this.attributes.placeholder.nodeValue) {
                        this.value = '';
                        this.className = '';
                    }
                }, false);
                input.addEventListener('blur', function(e) {
                    if (this.value === '') {
                        PlaceHolder._setValue(this);
                    }
                }, false);
            }
        }
    },

    _setValue: function(input) {
        input.value = input.attributes.placeholder.nodeValue;
        input.className = PlaceHolder.className;
    }
};

//頁面初始化時對所有input做初始化
//PlaceHolder.init();
//或者單獨設置某個元素
//PlaceHolder.create(document.getElementById('t1'));

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 揭西县| 龙南县| 五家渠市| 和顺县| 莱州市| 冀州市| 会同县| 南开区| 东阳市| 遵义县| 岢岚县| 平阴县| 岳池县| 东方市| 远安县| 扬中市| 泰州市| 平利县| 蒙山县| 璧山县| 乐至县| 建宁县| 永宁县| 沛县| 广灵县| 定边县| 琼结县| 阳谷县| 奈曼旗| 扎鲁特旗| 泉州市| 龙门县| 昌宁县| 宽甸| 曲沃县| 嘉黎县| 罗田县| 宝清县| 井陉县| 宜春市| 那坡县|