不受支持的HTML5元素和属性的JavaScript变通方法
我使用它来检测浏览器中不受支持的HTML5元素和属性。如果一个元素/属性不受支持,我想写一个快速解决方法 目前,我正在用输入元素处理“required”属性。我的想法是“检测”相关联的表单元素并钩住表单的jQuery事件但是怎么做呢? 下面是我如何使用输入元素修复“占位符”属性的示例代码:不受支持的HTML5元素和属性的JavaScript变通方法,javascript,jquery,html,modernizr,Javascript,Jquery,Html,Modernizr,我使用它来检测浏览器中不受支持的HTML5元素和属性。如果一个元素/属性不受支持,我想写一个快速解决方法 目前,我正在用输入元素处理“required”属性。我的想法是“检测”相关联的表单元素并钩住表单的jQuery事件但是怎么做呢? 下面是我如何使用输入元素修复“占位符”属性的示例代码: if(Modernizr.input.placeholder == false) { alert('input placeholder not exists, perform a workaround
if(Modernizr.input.placeholder == false) {
alert('input placeholder not exists, perform a workaround...');
$('[placeholder]').each(function() {
var input = $(this);
var placeholder = input.attr('placeholder');
input.bind('focus', function() {
if(this.value == placeholder) {
this.value = '';
$(this).removeClass('mzr-no-placeholder');
}
}).bind('blur', function() {
if(this.value == '') {
this.value = placeholder;
$(this).addClass('mzr-no-placeholder');
}
});
if(!this.value.length) {
this.value = placeholder;
$(this).addClass('mzr-no-placeholder');
}
});
}
else {
alert('input placeholder exists.');
}
这是解决办法
多亏了格雷特
if(Modernizr.input.required == false) {
alert('Tag input required not exists, perform a workaround...');
$('form').submit(function() {
var requirementsOK = true;
$('[required]', this).each(function() {
if(!this.value.length) {
$(this).addClass('mzr-no-required');
requirementsOK = false;
}
else {
$(this).removeClass('mzr-no-required');
}
});
return requirementsOK;
});
}
else {
alert('Tag input required exists.');
}
以下是关于如何开始的提示:
if (Modernizer.input.required === false) {
$('form').submit(function() {
$('[required]', this).each(function() {
if (!$(this).val()) {
alert('derp!');
return false;
}
}
}
}
以下是关于如何开始的提示:
if (Modernizer.input.required === false) {
$('form').submit(function() {
$('[required]', this).each(function() {
if (!$(this).val()) {
alert('derp!');
return false;
}
}
}
}
本末倒置。。。最好的解决方案总是那些我没有记住的。谢谢,@greut本末倒置。。。最好的解决方案总是那些我没有记住的。谢谢,@greut