- Add a new option:
focus
. - Add ARIA attributes for better accessibility.
- Add the
Tab
andEnter
keys to the keyboard support. - Check if the
pointer
object is defined or not for better compatibility (#421).
- Fix an issue in the
types/index.d.ts
file (#414).
- Add 2 new events:
play
andstop
(#411). - Let the
viewed
,zoomed
andhidden
events can not be canceled. - Improve the TypeScript declarations in the
types/index.d.ts
file.
- Fix wrong usage about
this
in ES6+ (#395). - Improve the wheel zoom behavior (#396).
- Improve the
hide
method for some edge cases (#407).
- Improve image filtering.
- Add a new options:
inheritedAttributes
. - Ignore images without the
src
attribute (#326). - Improve the
hide
method for unexpected calling (#367). - Reset the padding right of the
body
element when resizing (#379). - Remove unnecessary
padding-right: 0px
from thebody
element when close the viewer modal (#394).
- Detect if the queried image is existing when update image list (#333).
- Add a new option:
slideOnTouch
(#340). - Force reflow element in a new way to avoid side effect (#343).
- Add two new options:
zoomOnTouch
andzoomOnWheel
(#329).
- Do nothing if the
index
value is invalid when call theview
method (#312). - Ignore invalid
element
parameter on the class utility functions (#317). - Improve event type determining for iOS 13+ (#321).
- Avoid using the
innerHTML
property for security (#269). - Avoid escaping URLs (#298, #301).
- Improve the escaping function to avoid to escape HTML entities repeatedly.
- Escape all strings that use in HTML for better security (#269).
- Fix the missing fade out transition when hiding the viewer (#275).
- Decode image name when it comes from URL (#282).
- Fix unexpected modal exiting behavior when the mouse is pressed (#255).
- Abort image downloading when cancel viewing for better performance.
- Fix
Document not active
error when calling theexit
method. - Improve wheel event listening for better performance (#102).
- Emulate click (single tap) and double click (double tap) in touch devices to support backdrop and image zooming (#210).
- Ignore pointer events when not the primary button was pressed (#221).
- Add a new option:
className
(#209). - Fix wrong click action when the target image is ignored by the
filter
option (#211)
- Improve viewer instance storage to avoid side effect.
- Fix parameter error of
Object.assign
in iOS devices.
- Add 2 new options:
toggleOnDblclick
(#173) andinitialViewIndex
(#183). - Enhance the
title
option to support to customize title content (#54, #185).
- Add 2 new events:
zoom
andzoomed
(#144). - Make the touch zooming more smoother (#162).
- Add a namespace to data attribute names (from
data-*
todata-viewer-*
) to avoid side effect. - Make sure the image data is a non-null object to avoid unexpected errors.
- Fix broken zoom feature in iOS browsers (#167).
- Add in browser checking to support to import in Node.js.
- Cancel update when there are no images when calling the
update
method.
- Fix the wrong image switching behavior in iOS browsers.
- Fix a
TypeError
in strict mode (#149). - Fix type definitions issue of the
show
andhide
methods.
- Add a new option:
loading
. - Add type definitions file for TypeScript.
- Enhance the
show
,hide
andplay
methods. - Change the default value of the
loop
option fromfalse
totrue
.
- Add a new option:
container
. - Recover the missing default value of the
interval
option (#133).
- Add a new option:
backdrop
.
- Add
style
field topackage.json
. - Fix the issue of NodeList deconstructing (#118).
- Fall back to
document.documentElement
ifdocument.body
is not existing (#120).
- Add a new option:
loop
. - Enhance toolbar customization.
- Add a new option:
filter
. - Enhance the
prev
andnext
methods (#47). - Support to customize the layout of the toolbar (#79).
- Disallow to show again if it had shown.
- Refactor - separate constants, simplify utilities, and so on.
- Stop play after exited fullscreen.
- Improve JSDoc.
- Ignore the mouse down event when the viewer is hiding (#70).
- Fixed multiple active items in the navbar (#75).
- Support to use Viewer in a modal (#39).
- Changed the
main
field value fromdist/viewer.js
(UMD) todist/viewer.common.js
(CommonJS). - Added
module
andbrowser
fields topackage.json
. - Fixed an issue of touch zoom.
- Fixed the issue of touch and move problem (#63).
- Prevented the default behavior of drag action (#63).
- Ported JavaScript code to ECMAScript 6.
- Ported CSS code to CSSNext.
- Improve event handler for Pointer Events.
- Improve modal opening and closing.
- Remove the
build
event. - Rename
built
event toready
. - Fixed a bug of
data-*
attributes setting and getting (#33).
- Added some properties to "event.detail" of the "view" and "viewed" events.
- Fix the issue of hiding the wrong element in the "view" method (#19).
- Fix the error of the parameters on the "url" option when it is a function.
- Added tests.
- Ignored the invalid class name.
- Re-render image only when viewed.
- Add more available values to the "title", "toolbar" and "navbar" options.
- Support to toggle the visibility of title, toolbar, and navbar between different screen widths.
- Exit fullscreen when stop playing.
- Fixed title not generated bug.
- Added "update" method for update image dynamically.
- Hides title and toolbar on small screen (width < 768px).
- Supports to zoom from event triggering point.
- Optimized "toggle" method.
- Fixed a bug of the index of viewing image.
- Supports 2 modes: "modal" (default), "inline"
- Supports 30 options: "inline", "button", "navbar", "title", "toolbar", "tooltip", "movable", "zoomable", "rotatable", "scalable", "transition", "fullscreen", "keyboard", "interval", "minWidth", "minHeight", "zoomRatio", "minZoomRatio", "maxZoomRatio", "zIndex", "zIndexInline", "url", "build", "built", "show", "shown", "hide", "hidden", "view", "viewed"
- Supports 22 methods: "show", "hide", "view", "prev", "next", "move", "moveTo", "zoom", "zoomTo", "rotate", "rotateTo", "scale", "scaleX", "scaleY", "play", "stop", "full", "exit", "tooltip", "toggle", "reset", "destroy"
- Supports 8 events: "build", "built", "show", "shown", "hide", "hidden", "view", "viewed"