X Tutup
Skip to content

Commit c4e22ad

Browse files
mikesherovdmethvin
authored andcommitted
Fix #11721. Remove jQuery.boxModel, deprecate jQuery.support.boxModel.
This removes all internal uses of `jQuery.support.boxModel`. jQuery has never run unit tests with Quirks Mode and has not even feigned support for several years, so these remnants weren't doing much except giving false hope. For now, `jQuery.support.boxModel` continues to have a value indicating whether the W3C box model is *generally* in use, but be aware that this is easily overridden on an element-by-element basis by the `box-model` CSS property. So don't trust this value.
1 parent f76518e commit c4e22ad

File tree

6 files changed

+14
-20
lines changed

6 files changed

+14
-20
lines changed

src/effects.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -681,7 +681,7 @@ function defaultDisplay( nodeName ) {
681681
// document to it; WebKit & Firefox won't allow reusing the iframe document.
682682
if ( !iframeDoc || !iframe.createElement ) {
683683
iframeDoc = ( iframe.contentWindow || iframe.contentDocument ).document;
684-
iframeDoc.write( ( jQuery.support.boxModel ? "<!doctype html>" : "" ) + "<html><body>" );
684+
iframeDoc.write("<!doctype html><html><body>");
685685
iframeDoc.close();
686686
}
687687

src/offset.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ if ( "getBoundingClientRect" in document.documentElement ) {
2020
win = getWindow( doc ),
2121
clientTop = docElem.clientTop || body.clientTop || 0,
2222
clientLeft = docElem.clientLeft || body.clientLeft || 0,
23-
scrollTop = win.pageYOffset || jQuery.support.boxModel && docElem.scrollTop || body.scrollTop,
24-
scrollLeft = win.pageXOffset || jQuery.support.boxModel && docElem.scrollLeft || body.scrollLeft,
23+
scrollTop = win.pageYOffset || docElem.scrollTop,
24+
scrollLeft = win.pageXOffset || docElem.scrollLeft,
2525
top = box.top + scrollTop - clientTop,
2626
left = box.left + scrollLeft - clientLeft;
2727

@@ -176,8 +176,7 @@ jQuery.each( {scrollLeft: "pageXOffset", scrollTop: "pageYOffset"}, function( me
176176

177177
if ( val === undefined ) {
178178
return win ? (prop in win) ? win[ prop ] :
179-
jQuery.support.boxModel && win.document.documentElement[ method ] ||
180-
win.document.body[ method ] :
179+
win.document.documentElement[ method ] :
181180
elem[ method ];
182181
}
183182

src/support.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,8 @@ jQuery.support = (function() {
9595
boxSizingReliable: true
9696
};
9797

98-
// jQuery.boxModel DEPRECATED in 1.3, use jQuery.support.boxModel instead
99-
jQuery.boxModel = support.boxModel = (document.compatMode === "CSS1Compat");
98+
// jQuery.support.boxModel DEPRECATED in 1.8 since we don't support Quirks Mode
99+
support.boxModel = (document.compatMode === "CSS1Compat");
100100

101101
// Make sure checked status is properly cloned
102102
input.checked = true;

test/data/support/boxModelIE.html

Lines changed: 0 additions & 9 deletions
This file was deleted.

test/unit/offset.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,7 @@ testIframe("offset/table", "table", function( jQuery ) {
342342
});
343343

344344
testIframe("offset/scroll", "scroll", function( jQuery, win ) {
345-
expect(24);
345+
expect(26);
346346

347347
var ie = jQuery.browser.msie && parseInt( jQuery.browser.version, 10 ) < 8;
348348

@@ -397,6 +397,12 @@ testIframe("offset/scroll", "scroll", function( jQuery, win ) {
397397
notEqual( jQuery().scrollLeft(null), null, "jQuery().scrollLeft(null) testing setter on empty jquery object" );
398398
strictEqual( jQuery().scrollTop(), null, "jQuery().scrollTop(100) testing setter on empty jquery object" );
399399
strictEqual( jQuery().scrollLeft(), null, "jQuery().scrollLeft(100) testing setter on empty jquery object" );
400+
401+
// test setting scroll
402+
jQuery( win ).scrollTop( 100 );
403+
jQuery( win ).scrollLeft( 101 );
404+
equal( jQuery( win ).scrollTop(), 100, "jQuery( win ).scrollTop() testing setter" );
405+
equal( jQuery( win ).scrollLeft(), 101, "jQuery( win ).scrollLeft() testing setter" );
400406
});
401407

402408
testIframe("offset/body", "body", function( jQuery ) {

test/unit/support.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
module("support", { teardown: moduleTeardown });
22

3-
testIframeWithCallback( "proper boxModel in compatMode CSS1Compat (IE6 and IE7)", "support/boxModelIE", function( compatMode, boxModel ) {
4-
ok( compatMode !== "CSS1Compat" || boxModel, "boxModel properly detected" );
5-
});
3+
ok( jQuery.support.boxModel, "jQuery.support.boxModel is perpetually true since 1.8" );
64

75
testIframeWithCallback( "body background is not lost if set prior to loading jQuery (#9238)", "support/bodyBackground", function( color, support ) {
86
expect( 2 );

0 commit comments

Comments
 (0)
X Tutup