formtarget
ブラウザがまたはform
属性をサポートしているかどうかを確認するにはどうすればよいですか?
ここでは Modernizr は役に立たずform
、ブラウザーでの現在のサポート状況について Web 上で何かを見つけることさえできませんでした。簡単なテストでは、IE 9 を除く現在のすべてのブラウザーがそれらをサポートしていることが明らかになりました。
では、ブラウザがform*
属性を処理しているかどうかを確認するにはどうすればよいでしょうか?
formtarget
ブラウザがまたはform
属性をサポートしているかどうかを確認するにはどうすればよいですか?
ここでは Modernizr は役に立たずform
、ブラウザーでの現在のサポート状況について Web 上で何かを見つけることさえできませんでした。簡単なテストでは、IE 9 を除く現在のすべてのブラウザーがそれらをサポートしていることが明らかになりました。
では、ブラウザがform*
属性を処理しているかどうかを確認するにはどうすればよいでしょうか?
入力時のform属性は特殊なケースです。親フォームを参照するために HTML5 機能の前に使用されていましたが、現在は属性としても使用されているため、IE で誤検知が発生します。
チェック機能はありますが、パフォーマンスに影響を与える可能性がある DOM とのやり取りが含まれますが、とにかくここに行きます。それが役に立てば幸い。
function testInputFormSupport() {
var input = document.createElement('input'),
form = document.createElement('form'),
formId = 'test-input-form-reference-support';
// Id of the remote form
form.id = formId;
// Add form and input to DOM
document.body.appendChild(form);
document.body.appendChild(input);
// Add reference of form to input
input.setAttribute('form', formId);
// Check if reference exists
var res = !(input.form == null);
// Remove elements
document.body.removeChild(form);
document.body.removeChild(input);
return res;
}
どうぞ:
if("formtarget" in document.createElement("input")){
//good job, browser
}else{
//nope
}
このサイトをご覧ください。それはすべての新しいフォーム機能をカバーし、属性のサポートをテストするための便利な小さな機能を提供します
// Function to test for attribute support
function elSupportsAttr(el, attr) {
return attr in document.createElement(el);
}
試す
if ("attribute" in document.createElement("tag"))