From 8ed92076683d61752ae7246845e0be73df4556a0 Mon Sep 17 00:00:00 2001 From: "Davide P. Cervone" Date: Thu, 20 Feb 2014 14:29:31 -0500 Subject: [PATCH] Don't use MathJax_MSIE_Frame for those vesions of IE that suppor position:fixed (7 and above, as it turns out). Resolves issue #738. --- unpacked/MathJax.js | 6 ++++-- unpacked/extensions/FontWarnings.js | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/unpacked/MathJax.js b/unpacked/MathJax.js index 2043bac56..3f9f3854b 100644 --- a/unpacked/MathJax.js +++ b/unpacked/MathJax.js @@ -1557,7 +1557,9 @@ MathJax.Message = { browsers: { MSIE: function (browser) { - MathJax.Hub.config.styles["#MathJax_Message"].position = "absolute"; + MathJax.Message.msieFixedPositionBug = ((document.documentMode||0) < 7); + if (MathJax.Message.msieFixedPositionBug) + {MathJax.Hub.config.styles["#MathJax_Message"].position = "absolute"} MathJax.Message.quirks = (document.compatMode === "BackCompat"); }, Chrome: function (browser) { @@ -1580,7 +1582,7 @@ MathJax.Message = { } if (!this.div) { var frame = document.body; - if (MathJax.Hub.Browser.isMSIE && window.attachEvent) { + if (this.msieFixedPositionBug && window.attachEvent) { frame = this.frame = this.addDiv(document.body); frame.removeAttribute("id"); frame.style.position = "absolute"; frame.style.border = frame.style.margin = frame.style.padding = "0px"; diff --git a/unpacked/extensions/FontWarnings.js b/unpacked/extensions/FontWarnings.js index cb5aa1da4..2d7726331 100644 --- a/unpacked/extensions/FontWarnings.js +++ b/unpacked/extensions/FontWarnings.js @@ -241,8 +241,8 @@ if (HUB.Browser.isMSIE) { if (CONFIG.messageStyle.position === "fixed") { MathJax.Message.Init(); // make sure MathJax_MSIE_frame exists - frame = document.getElementById("MathJax_MSIE_Frame"); - CONFIG.messageStyle.position = "absolute"; + frame = document.getElementById("MathJax_MSIE_Frame") || frame; + if (frame !== document.body) {CONFIG.messageStyle.position = "absolute"} } } else {delete CONFIG.messageStyle.filter} CONFIG.messageStyle.maxWidth = (document.body.clientWidth-75) + "px";