kar*_*m79 11 javascript html5 jslint placeholder browser-feature-detection
我需要测试占位符支持.以下适用于所有现代浏览器,以及IE7,IE8,IE9:
$.support.placeholder = (function () {
var i = document.createElement("input");
return "placeholder" in i;
}());
Run Code Online (Sandbox Code Playgroud)
它有效,但JSLint抱怨使用in
:
出乎意料的'在'.与undefined比较,或使用hasOwnProperty方法.
很好,所以我会重构它:
$.support.placeholder = (function () {
var i = document.createElement("input");
return i.hasOwnProperty("placeholder");
}());
Run Code Online (Sandbox Code Playgroud)
现在这传递JSLint没有任何错误或警告,但它在IE7和IE8与这个旧板栗打破:
对象不支持属性或方法'hasOwnProperty'
任何想法如何使JSLint快乐,以及IE7和IE8?
Daf*_*aff 15
您还可以使用JSLint建议的其他解决方案:
return typeof i.placeholder !== 'undefined';
Run Code Online (Sandbox Code Playgroud)
这应该跨浏览器没有问题.
归档时间: |
|
查看次数: |
3163 次 |
最近记录: |