@@ -364,7 +364,7 @@ function hrefShim() {
364
364
}
365
365
366
366
function replaceWithName ( node , name ) {
367
- newNode = document . createElement ( name ) ;
367
+ var newNode = document . createElement ( name ) ;
368
368
var children = node . childNodes ;
369
369
for ( var i = 0 ; i < children . length ; i ++ ) {
370
370
var child = document . importNode ( children [ i ] , true ) ;
@@ -377,6 +377,34 @@ function replaceWithName(node, name) {
377
377
node . parentNode . replaceChild ( newNode , node ) ;
378
378
}
379
379
380
+ function mencloseShim ( ) {
381
+ var div = document . createElement ( 'div' ) ;
382
+ var menc = document . createElementNS ( 'http://www.w3.org/1998/Math/MathML' , 'menclose' ) ;
383
+ var mi = document . createElementNS ( 'http://www.w3.org/1998/Math/MathML' , 'mi' ) ;
384
+ menc . setAttribute ( 'notation' , 'box' ) ;
385
+ mi . textContent = '1' ;
386
+ menc . appendChild ( mi ) ;
387
+ div . appendChild ( menc ) ;
388
+ document . body . appendChild ( div ) ;
389
+ mencloseSupported = ( div . getBoundingClientRect ( ) . height > mi . getBoundingClientRect ( ) . height ) ;
390
+ document . body . removeChild ( div ) ;
391
+ if ( ! mencloseSupported ) {
392
+ var boxes = document . querySelectorAll ( 'menclose[notation=box]' ) ;
393
+ if ( boxes [ 0 ] ) {
394
+ for ( var i = 0 ; i < boxes . length ; i ++ ) {
395
+ boxes [ i ] . style . border = '1px solid' ;
396
+ boxes [ i ] . style . padding = '3px' ;
397
+ }
398
+ }
399
+ var slashed = document . querySelectorAll ( 'menclose[notation=updiagonalstrike]' ) ;
400
+ if ( slashed [ 0 ] ) {
401
+ for ( var i = 0 ; i < slashed . length ; i ++ ) {
402
+ slashed [ i ] . className = 'strikediag' ;
403
+ }
404
+ }
405
+ }
406
+ }
407
+
380
408
function minMathWidth ( ) {
381
409
var maths = document . querySelectorAll ( 'math[display=block], table' ) ;
382
410
if ( maths && maths . length > 0 ) {
@@ -405,4 +433,5 @@ document.observe("dom:loaded", function (){
405
433
tableAlignShim ( ) ;
406
434
minMathWidth ( ) ;
407
435
hrefShim ( ) ;
436
+ mencloseShim ( ) ;
408
437
} ) ;
0 commit comments