mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Math
synced 2024-12-01 02:36:47 +00:00
fe3165faff
Also adds the corrections made to various js files when jscs was run, and removes an old version of .jshintrc. Only VisualEditor files are checked by csshint due to clashes with an upstream bug in the csslint parser. This could be looked into in the future. Bug: T112576 Change-Id: I611901040d3b38ae3ef707deb8d25771f043b1d8
29 lines
1.3 KiB
JavaScript
29 lines
1.3 KiB
JavaScript
( function ( $ ) {
|
|
'use strict';
|
|
var img, url;
|
|
|
|
// If MathPlayer is installed we show the MathML rendering.
|
|
if ( navigator.userAgent.indexOf( 'MathPlayer' ) > -1 ) {
|
|
$( '.mwe-math-mathml-a11y' ).removeClass( 'mwe-math-mathml-a11y' );
|
|
$( '.mwe-math-fallback-image-inline, .mwe-math-fallback-image-display' ).css( 'display', 'none' );
|
|
return;
|
|
}
|
|
|
|
// We verify whether SVG as <img> is supported and otherwise use the
|
|
// PNG fallback. See https://github.com/Modernizr/Modernizr/blob/master/feature-detects/svg/asimg.js
|
|
if ( !document.implementation.hasFeature( 'http://www.w3.org/TR/SVG11/feature#Image', '1.1' ) ) {
|
|
$( '.mwe-math-fallback-image-inline, .mwe-math-fallback-image-display' ).each( function () {
|
|
// Create a new PNG image to use as the fallback.
|
|
img = document.createElement( 'img' );
|
|
url = this.style.backgroundImage.match( /url\('?([^']*)'?\)/ )[ 1 ];
|
|
img.setAttribute( 'src', url.replace( 'mode=' + 'mathml', 'mode=' + 'png' ) );
|
|
img.setAttribute( 'class', 'tex mwe-math-fallback-image-' + ( $( this ).hasClass( 'mwe-math-fallback-image-inline' ) ? 'inline' : 'display' ) );
|
|
img.setAttribute( 'aria-hidden', 'true' );
|
|
this.parentNode.insertBefore( img, this );
|
|
|
|
// Hide the SVG fallback.
|
|
$( this ).css( 'display', 'none' );
|
|
} );
|
|
}
|
|
}( jQuery ) );
|