NOTE: This module is a port of a jQuery plugin using just Javascript. Minified and including the CSS file this module is 11kb.
The original author is Prince John Wesley.
The original plugin's repository can be found here.
Description: A preview of full webpage or its DOM element with flexible positioning and navigation support.
Fork this repository or download js/css files from dist directory.
Include this module on a page.
<!-- Alternatively can include non-minified files -->
<link rel="stylesheet" href="minimap.min.css" />
<script src="minimap.min.js"></script>With a module bundler such as Lasso.js.
var MiniMap = require('minimap-js');// 'element' is desired dom element
var minimap = new MiniMap(element, options);
minimap.show();
heightratio of the view port. ratio can be in the range [0.0, 1.0). (default: 0.6)
widthratio of the view port. ratio can be in the range [0.0, 0.5). (default: 0.05)
Margin
topratio of the view port. ratio can be in the range (0.0, 0.9]. (default: 0.035)
Margin
leftorright(based onpositionproperty) ratio of the view port. ratio can be in the range (0.0, 0.9]. (default: 0.035)
whether or not to allow clicking to scroll through the page on the minimap & region element. (default: true)
Whether or not to fade the element to hoverOpacity and a transition speed of hoverFadeSpeed seconds when mouse over. (default: false)
Opacity value [0.0, 1.0] to set the opacity of the element to if fadeHover is true. (default: 0.4)
Transition speed [0.0, infinity) for the opacity if fadeHover is true. (default: 0.5)
positionof the minimap. Supported positions are:
'right'(default)'left'
touchsupport. (default: true)
linear
animationsupport for scrolling. (dafault: true)
Smooth scroll delay in milliseconds. (default: 200ms)
disableFindif true, prevents browser CTRL+F from finding duplicated text in minimap. (default: false)
Set
positionproperty.positioncan be either'left'or'right'
Set
heightRatioproperty.
Set
widthRatioproperty.
Set
offsetHeightRatioproperty.
Set
offsetWidthRatioproperty.
Set
smoothScrollproperty
Set
setSmoothScrollDelayproperty.
onPreviewChangecallback will be triggered for the below cases:
- View port is resized.
- Calling setter functions.
Use this function to customize DOMs inside minimap.
Parameters:
minimap - $minimap DOM
scale - Scale object with `x` and `y` properties.(width/height ratio of minimap with respect to viewport)
Show preview
Hide preview
Toggle Preview
Mini-map with default values
var previewBody = new MiniMap(
allowClick: true,
fadeHover: false,
hoverOpacity: 0.4,
hoverFadeSpeed: 0.5,
heightRatio: 0.6,
widthRatio: 0.05,
offsetHeightRatio: 0.035,
offsetWidthRatio: 0.035,
position: 'right',
touch: true,
smoothScroll: true,
smoothScrollDelay: 200,
onPreviewChange: function (minimap, scale) {},
disableFind: false
});Use the below css classes for customization
.minimap- Mini-map area
.miniregion- Mini-map view area
- Async updates to the dom elements after minimap was created may not reflect in the preview.
This plugin is licensed under the MIT license.
Copyright (c) 2014 Prince John Wesley