如何查看瀏覽器是否支持HTML5佔位符標記,以便我可以決定是否掛住我的jQuery佔位符插件。HTML5「佔位符」支持
14
A
回答
17
var placeholderSupported = ('placeholder' in document.createElement('input'));
變量placeholderSupported
將true
如果原生支持它。否則,它將被設置爲false
。
2
要得到廣泛的思路去:
http://caniuse.com/#search=placeholder
並在瀏覽器來測試你可以這樣做:
function supportsPlaceholder() {
var i = document.createElement('input');
return 'placeholder' in i;
}
4
如果要包括第三方庫像Modernizr的和yepnope .js,測試支持和漸進式增強非常簡單,並且適度降級。
這是有很多資源的,應該幫助一個很好的文章:http://www.sitepoint.com/regressive-enhancement-with-modernizr-and-yepnope/
16
http://diveinto.html5doctor.com/everything.html#placeholder
return 'placeholder' in document.createElement('input');
但是,你正在使用的jQuery插件可能已經檢查本機支持 - 你可能不是需要你自己做。
1
我從上面的答案借用並提出,以便它是與舊的現代瀏覽器以及IE向後兼容 -
有了下面的代碼,請確保您同時有「價值」和「佔位符'爲輸入字段設置屬性。在我的特殊情況下,我需要支持IE變體。
說明 - 如果瀏覽器支持佔位符,則會刪除輸入值。如果不是,則舊版瀏覽器將忽略佔位符屬性,而下面的js模仿默認的佔位符行爲。該腳本還將忽略CSRF的任何身份驗證令牌(在我的表單中導致auth令牌值在我的Rails應用中導致CSRF警告時出現錯誤)。
簡化腳本本身的另一種方法是爲每個輸入分配一個類,以明確地使用此腳本並相應地更新true語句(儘管下面的方法更乾燥一些)。
var placeholderSupported = !!('placeholder' in document.createElement('input'));
if (placeholderSupported === true){
$('input:not([type="submit"], [name="authenticity_token"])').val('');
} else{
$('input')
.focus(function() {
if (this.value === this.defaultValue) {
this.value = '';
}
})
.blur(function() {
if (this.value === '') {
this.value = this.defaultValue;
}
});
}
相關問題
- 1. 佔位符 - 在operamobile中不支持 - Jquerymobile
- 2. 佔位符是否支持IE 8?
- 3. HTML5佔位符css填充
- 4. HTML5佔位符的jQuery
- 5. html5佔位符對齊
- 6. HTML5佔位符後面的邏輯
- 7. JQuery佔位符HTML5模擬器
- 8. 使用HTML5的佔位符屬性
- 9. 作爲值的HTML5佔位符
- 10. 使用HTML5佔位符等標籤
- 11. 變形2.0:添加HTML5佔位符
- 12. HTML5,佔位符,線高度的Webkit
- 13. 佔位符輸入類型日期html5
- 14. Google的html5 shiv不呈現佔位符?
- 15. HTML5佔位符功能檢測問題
- 16. 佔位符VS標籤用於HTML5
- 17. 佔位符HTML5應該留空
- 18. 爲什麼HTML選擇框不支持佔位符屬性?
- 19. Javascript檢查在IE8中的原生佔位符支持
- 20. 不支持佔位符的瀏覽器jQuery插件
- 21. 文本輸入佔位符和跨瀏覽器支持
- 22. 檢測輸入類型=「日期」是否支持佔位符
- 23. IE9 RTW是否支持輸入元素的佔位符屬性?
- 24. IE中不支持佔位符屬性。有什麼建議麼?
- 25. Internet Explorer缺少佔位符支持,特別是密碼字段
- 26. django == 1.4支持html5
- 27. TideSDK支持HTML5 Canvas
- 28. HTML5支持信息
- 29. 支持HTML5和RDFa
- 30. Google chrome html5支持
爲什麼你需要!在表達中? – hop
@hop - 你說得對。我不。更新。 –