X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fsupport.js;h=cddd3dc3b962af886a59cf9d3c6468bfe66b787d;hb=8effe3a7dee91c833cc1774646da9d743600c64c;hp=097866c284363b00e489dee1bb83557d5980523c;hpb=61e37d41490aed319a176c6ca7feb95e5505059c;p=jquery.git diff --git a/src/support.js b/src/support.js index 097866c..cddd3dc 100644 --- a/src/support.js +++ b/src/support.js @@ -5,10 +5,10 @@ var root = document.documentElement, script = document.createElement("script"), div = document.createElement("div"), - id = "script" + now(); + id = "script" + jQuery.now(); div.style.display = "none"; - div.innerHTML = '
a'; + div.innerHTML = "
a"; var all = div.getElementsByTagName("*"), a = div.getElementsByTagName("a")[0]; @@ -47,7 +47,17 @@ // (IE uses styleFloat instead of cssFloat) cssFloat: !!a.style.cssFloat, + // Make sure that if no value is specified for a checkbox + // that it defaults to "on". + // (WebKit defaults to "" instead) + checkOn: div.getElementsByTagName("input")[0].value === "on", + + // Make sure that a selected-by-default option has a working selected property. + // (WebKit defaults to false instead of true, IE too, if it's in an optgroup) + optSelected: document.createElement("select").appendChild( document.createElement("option") ).selected, + // Will be defined later + checkClone: false, scriptEval: false, noCloneEvent: true, boxModel: null @@ -80,9 +90,17 @@ div.cloneNode(true).fireEvent("onclick"); } + div = document.createElement("div"); + div.innerHTML = ""; + + var fragment = document.createDocumentFragment(); + fragment.appendChild( div.firstChild ); + + // WebKit doesn't clone checked state correctly in fragments + jQuery.support.checkClone = fragment.cloneNode(true).cloneNode(true).lastChild.checked; + // Figure out if the W3C box model works as expected // document.body must exist before we can do this - // TODO: This timeout is temporary until I move ready into core.js. jQuery(function() { var div = document.createElement("div"); div.style.width = div.style.paddingLeft = "1px";