Create A Dynamic Responsive Masonry Layout In jQuery - Elastic Columns
| File Size: | 13.7 KB |
|---|---|
| Views Total: | 2065 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
Elastic Columns is a lightweight jQuery plugin for creating flexible responsive Masonry-like layouts inspired by Masonry.js and Isotope.js.
The plugin equalizes the width of grid items and re-arranges them in a fluid grid layout similar to Pinterest.
See Also:
How to use it:
1. Download and load the minified version of the Elastic Columns after jQuery.
<script src="/path/to/cdn/jquery.min.js"></script> <script src="/path/to/dist/elastic-columns.min.js"></script>
2. Add items to the Masonry layout.
<div class="columns">
<div class="item">
Grid Item 1
</div>
<div class="item">
Grid Item 2
</div>
<div class="item">
Grid Item 3
</div>
...
</div>
3. Initialize the plugin on the top container and specify the number of columns as follows.
var $container = $('.columns');
$container.elasticColumns(
{
columns: 3,
});
4. Enable the plugin to dynamically set the number of columns based on the screen size.
$(window).on('resize', function(evt)
{
// 4 columns when the screen size is larger than 1200px
var columns = $container.width() > 1200 ? 4 : 3;
$container.elasticColumns('set', 'columns', columns);
$container.elasticColumns('refresh');
});
5. Enable the plugin to dynamically set the number of columns based on the screen size.
$(window).on('resize', function(evt)
{
// 4 columns when the screen size is larger than 1200px
var columns = $container.width() > 1200 ? 4 : 3;
$container.elasticColumns('set', 'columns', columns);
$container.elasticColumns('refresh');
});
6. Set the gap between grid items.
var $container = $('.columns');
$container.elasticColumns(
{
columns: 3,
innerMargin: 20,
outerMargin: 20,
});
7. Destroy the instance.
$container.elasticColumns('destroy');
This awesome jQuery plugin is developed by johansatge. For more Advanced Usages, please check the demo page or visit the official website.










