From bbbdd947256a3fcd788fb9d4f306046082a1ef1f Mon Sep 17 00:00:00 2001 From: Michał Gołębiowski Date: Tue, 27 Aug 2013 00:54:13 +0200 Subject: Fix #10814. Make support tests lazy and broken out to components. --- src/attributes/support.js | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/attributes/support.js (limited to 'src/attributes/support.js') diff --git a/src/attributes/support.js b/src/attributes/support.js new file mode 100644 index 000000000..aa9adf265 --- /dev/null +++ b/src/attributes/support.js @@ -0,0 +1,35 @@ +define([ + "../var/support" +], function( support ) { + +(function () { + var input = document.createElement( "input" ), + select = document.createElement( "select" ), + opt = select.appendChild( document.createElement( "option" ) ); + + input.type = "checkbox"; + + // Support: Safari 5.1, iOS 5.1, Android 4.x, Android 2.3 + // Check the default checkbox/radio value ("" on old WebKit; "on" elsewhere) + support.checkOn = input.value !== ""; + + // Must access the parent to make an option select properly + // Support: IE9, IE10 + support.optSelected = opt.selected; + + // Make sure that the options inside disabled selects aren't marked as disabled + // (WebKit marks them as disabled) + select.disabled = true; + support.optDisabled = !opt.disabled; + + // Check if an input maintains its value after becoming a radio + // Support: IE9, IE10 + input = document.createElement( "input" ); + input.value = "t"; + input.type = "radio"; + support.radioValue = input.value === "t"; +})(); + +return support; + +}); -- cgit v1.2.3