mirror of
https://github.com/openseadragon/openseadragon.git
synced 2024-11-22 05:06:09 +03:00
Remove support for IE < 11 (#1863)
This commit is contained in:
parent
7ddc5c93e3
commit
6fa083d2e0
@ -33,6 +33,8 @@ OPENSEADRAGON CHANGELOG
|
|||||||
* Viewer: added a canvas-contextmenu event (#1872 @msalsbery)
|
* Viewer: added a canvas-contextmenu event (#1872 @msalsbery)
|
||||||
* Added additional documentation for the zoomPerSecond viewer option (#1872 @msalsbery)
|
* Added additional documentation for the zoomPerSecond viewer option (#1872 @msalsbery)
|
||||||
* MouseTracker: Per #1863, dropped support for Internet Explorer < 11 (#1872 @msalsbery)
|
* MouseTracker: Per #1863, dropped support for Internet Explorer < 11 (#1872 @msalsbery)
|
||||||
|
* Dropped support for older browsers (IE < 11)
|
||||||
|
* Removed deprecated OpenSeadragon.getEvent function
|
||||||
|
|
||||||
2.4.2:
|
2.4.2:
|
||||||
|
|
||||||
|
@ -1577,29 +1577,6 @@ function OpenSeadragon( options ){
|
|||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Gets the latest event, really only useful internally since its
|
|
||||||
* specific to IE behavior.
|
|
||||||
* @function
|
|
||||||
* @param {Event} [event]
|
|
||||||
* @returns {Event}
|
|
||||||
* @deprecated For internal use only
|
|
||||||
* @private
|
|
||||||
*/
|
|
||||||
getEvent: function( event ) {
|
|
||||||
if( event ){
|
|
||||||
$.getEvent = function( event ) {
|
|
||||||
return event;
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
$.getEvent = function() {
|
|
||||||
return window.event;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
return $.getEvent( event );
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the position of the mouse on the screen for a given event.
|
* Gets the position of the mouse on the screen for a given event.
|
||||||
* @function
|
* @function
|
||||||
@ -1612,7 +1589,6 @@ function OpenSeadragon( options ){
|
|||||||
$.getMousePosition = function( event ){
|
$.getMousePosition = function( event ){
|
||||||
var result = new $.Point();
|
var result = new $.Point();
|
||||||
|
|
||||||
event = $.getEvent( event );
|
|
||||||
result.x = event.pageX;
|
result.x = event.pageX;
|
||||||
result.y = event.pageY;
|
result.y = event.pageY;
|
||||||
|
|
||||||
@ -1622,7 +1598,6 @@ function OpenSeadragon( options ){
|
|||||||
$.getMousePosition = function( event ){
|
$.getMousePosition = function( event ){
|
||||||
var result = new $.Point();
|
var result = new $.Point();
|
||||||
|
|
||||||
event = $.getEvent( event );
|
|
||||||
result.x =
|
result.x =
|
||||||
event.clientX +
|
event.clientX +
|
||||||
document.body.scrollLeft +
|
document.body.scrollLeft +
|
||||||
@ -1858,51 +1833,16 @@ function OpenSeadragon( options ){
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Ensures an image is loaded correctly to support alpha transparency.
|
* Ensures an image is loaded correctly to support alpha transparency.
|
||||||
* Generally only IE has issues doing this correctly for formats like
|
|
||||||
* png.
|
|
||||||
* @function
|
* @function
|
||||||
* @param {String} src
|
* @param {String} src
|
||||||
* @returns {Element}
|
* @returns {Element}
|
||||||
*/
|
*/
|
||||||
makeTransparentImage: function( src ) {
|
makeTransparentImage: function( src ) {
|
||||||
|
var img = $.makeNeutralElement( "img" );
|
||||||
|
|
||||||
$.makeTransparentImage = function( src ){
|
img.src = src;
|
||||||
var img = $.makeNeutralElement( "img" );
|
|
||||||
|
|
||||||
img.src = src;
|
return img;
|
||||||
|
|
||||||
return img;
|
|
||||||
};
|
|
||||||
|
|
||||||
if ( $.Browser.vendor === $.BROWSERS.IE && $.Browser.version < 7 ) {
|
|
||||||
|
|
||||||
$.makeTransparentImage = function( src ){
|
|
||||||
var img = $.makeNeutralElement( "img" ),
|
|
||||||
element = null;
|
|
||||||
|
|
||||||
element = $.makeNeutralElement("span");
|
|
||||||
element.style.display = "inline-block";
|
|
||||||
|
|
||||||
img.onload = function() {
|
|
||||||
element.style.width = element.style.width || img.width + "px";
|
|
||||||
element.style.height = element.style.height || img.height + "px";
|
|
||||||
|
|
||||||
img.onload = null;
|
|
||||||
img = null; // to prevent memory leaks in IE
|
|
||||||
};
|
|
||||||
|
|
||||||
img.src = src;
|
|
||||||
element.style.filter =
|
|
||||||
"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" +
|
|
||||||
src +
|
|
||||||
"', sizingMethod='scale')";
|
|
||||||
|
|
||||||
return element;
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
return $.makeTransparentImage( src );
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
@ -2144,23 +2084,7 @@ function OpenSeadragon( options ){
|
|||||||
* @param {Event} [event]
|
* @param {Event} [event]
|
||||||
*/
|
*/
|
||||||
cancelEvent: function( event ) {
|
cancelEvent: function( event ) {
|
||||||
event = $.getEvent( event );
|
event.preventDefault();
|
||||||
|
|
||||||
if ( event.preventDefault ) {
|
|
||||||
$.cancelEvent = function( event ){
|
|
||||||
// W3C for preventing default
|
|
||||||
event.preventDefault();
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
$.cancelEvent = function( event ){
|
|
||||||
event = $.getEvent( event );
|
|
||||||
// legacy for preventing default
|
|
||||||
event.cancel = true;
|
|
||||||
// IE < 9 for preventing default
|
|
||||||
event.returnValue = false;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
$.cancelEvent( event );
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
@ -2171,28 +2095,7 @@ function OpenSeadragon( options ){
|
|||||||
* @param {Event} [event]
|
* @param {Event} [event]
|
||||||
*/
|
*/
|
||||||
eventIsCanceled: function( event ) {
|
eventIsCanceled: function( event ) {
|
||||||
event = $.getEvent( event );
|
return event.defaultPrevented;
|
||||||
|
|
||||||
if ( event.preventDefault ) {
|
|
||||||
$.eventIsCanceled = function( event ){
|
|
||||||
// W3C
|
|
||||||
return event.defaultPrevented;
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
$.eventIsCanceled = function( event ){
|
|
||||||
event = $.getEvent( event );
|
|
||||||
if ( typeof event.returnValue !== 'undefined' ) {
|
|
||||||
// IE < 9
|
|
||||||
return !event.returnValue;
|
|
||||||
} else if ( typeof event.cancel !== 'undefined' ) {
|
|
||||||
// legacy
|
|
||||||
return event.cancel;
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
return $.eventIsCanceled( event );
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
@ -2202,23 +2105,7 @@ function OpenSeadragon( options ){
|
|||||||
* @param {Event} [event]
|
* @param {Event} [event]
|
||||||
*/
|
*/
|
||||||
stopEvent: function( event ) {
|
stopEvent: function( event ) {
|
||||||
event = $.getEvent( event );
|
event.stopPropagation();
|
||||||
|
|
||||||
if ( event.stopPropagation ) {
|
|
||||||
// W3C for stopping propagation
|
|
||||||
$.stopEvent = function( event ){
|
|
||||||
event.stopPropagation();
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
// IE < 9 for stopping propagation
|
|
||||||
$.stopEvent = function( event ){
|
|
||||||
event = $.getEvent( event );
|
|
||||||
event.cancelBubble = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
$.stopEvent( event );
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
@ -2407,25 +2294,7 @@ function OpenSeadragon( options ){
|
|||||||
|
|
||||||
request.send(null);
|
request.send(null);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
var msg = e.message;
|
$.console.log( "%s while making AJAX request: %s", e.name, e.message );
|
||||||
|
|
||||||
/*
|
|
||||||
IE < 10 does not support CORS and an XHR request to a different origin will fail as soon
|
|
||||||
as send() is called. This is particularly easy to miss during development and appear in
|
|
||||||
production if you use a CDN or domain sharding and the security policy is likely to break
|
|
||||||
exception handlers since any attempt to access a property of the request object will
|
|
||||||
raise an access denied TypeError inside the catch block.
|
|
||||||
|
|
||||||
To be friendlier, we'll check for this specific error and add a documentation pointer
|
|
||||||
to point developers in the right direction. We test the exception number because IE's
|
|
||||||
error messages are localized.
|
|
||||||
*/
|
|
||||||
var oldIE = $.Browser.vendor === $.BROWSERS.IE && $.Browser.version < 10;
|
|
||||||
if ( oldIE && typeof ( e.number ) !== "undefined" && e.number === -2147024891 ) {
|
|
||||||
msg += "\nSee http://msdn.microsoft.com/en-us/library/ms537505(v=vs.85).aspx#xdomain";
|
|
||||||
}
|
|
||||||
|
|
||||||
$.console.log( "%s while making AJAX request: %s", e.name, msg );
|
|
||||||
|
|
||||||
request.onreadystatechange = function(){};
|
request.onreadystatechange = function(){};
|
||||||
|
|
||||||
@ -2772,21 +2641,15 @@ function OpenSeadragon( options ){
|
|||||||
|
|
||||||
//determine if this browser supports image alpha transparency
|
//determine if this browser supports image alpha transparency
|
||||||
$.Browser.alpha = !(
|
$.Browser.alpha = !(
|
||||||
(
|
$.Browser.vendor === $.BROWSERS.CHROME && $.Browser.version < 2
|
||||||
$.Browser.vendor === $.BROWSERS.IE &&
|
|
||||||
$.Browser.version < 9
|
|
||||||
) || (
|
|
||||||
$.Browser.vendor === $.BROWSERS.CHROME &&
|
|
||||||
$.Browser.version < 2
|
|
||||||
)
|
|
||||||
);
|
);
|
||||||
|
|
||||||
//determine if this browser supports element.style.opacity
|
//determine if this browser supports element.style.opacity
|
||||||
$.Browser.opacity = !(
|
$.Browser.opacity = true;
|
||||||
$.Browser.vendor === $.BROWSERS.IE &&
|
|
||||||
$.Browser.version < 9
|
|
||||||
);
|
|
||||||
|
|
||||||
|
if ( $.Browser.vendor === $.BROWSERS.IE && $.Browser.version < 11 ) {
|
||||||
|
$.console.error('Internet Explorer versions < 11 are not supported by OpenSeadragon');
|
||||||
|
}
|
||||||
})();
|
})();
|
||||||
|
|
||||||
|
|
||||||
|
@ -6,21 +6,13 @@
|
|||||||
|
|
||||||
$.MouseTracker.subscribeEvents = [ "click", "dblclick", "keypress", "focus", "blur", $.MouseTracker.wheelEventName ];
|
$.MouseTracker.subscribeEvents = [ "click", "dblclick", "keypress", "focus", "blur", $.MouseTracker.wheelEventName ];
|
||||||
|
|
||||||
if( $.MouseTracker.wheelEventName == "DOMMouseScroll" ) {
|
if( $.MouseTracker.wheelEventName === "DOMMouseScroll" ) {
|
||||||
// Older Firefox
|
// Older Firefox
|
||||||
$.MouseTracker.subscribeEvents.push( "MozMousePixelScroll" );
|
$.MouseTracker.subscribeEvents.push( "MozMousePixelScroll" );
|
||||||
}
|
}
|
||||||
|
|
||||||
$.MouseTracker.havePointerEvents = false;
|
$.MouseTracker.havePointerEvents = false;
|
||||||
$.MouseTracker.unprefixedPointerEvents = true;
|
$.MouseTracker.subscribeEvents.push( "mouseenter", "mouseleave", "mouseover", "mouseout", "mousedown", "mouseup", "mousemove" );
|
||||||
$.MouseTracker.subscribeEvents.push( "mouseenter", "mouseleave" );
|
|
||||||
if ( $.Browser.vendor !== $.BROWSERS.IE || $.Browser.version > 8 ) {
|
|
||||||
$.MouseTracker.subscribeEvents.push( "mouseover", "mouseout" );
|
|
||||||
$.MouseTracker.havePointerOverOut = true;
|
|
||||||
} else {
|
|
||||||
$.MouseTracker.havePointerOverOut = false;
|
|
||||||
}
|
|
||||||
$.MouseTracker.subscribeEvents.push( "mousedown", "mouseup", "mousemove" );
|
|
||||||
$.MouseTracker.mousePointerId = "legacy-mouse";
|
$.MouseTracker.mousePointerId = "legacy-mouse";
|
||||||
// Legacy mouse events capture support (IE/Firefox only?)
|
// Legacy mouse events capture support (IE/Firefox only?)
|
||||||
$.MouseTracker.havePointerCapture = (function () {
|
$.MouseTracker.havePointerCapture = (function () {
|
||||||
|
Loading…
Reference in New Issue
Block a user