blowfish/node_modules/packery/sandbox/horizontal.html

192 lines
4.7 KiB
HTML
Raw Normal View History

2023-01-29 22:30:24 +00:00
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Packery horizontal examples</title>
<link rel="stylesheet" href="css/examples.css" />
<link rel="stylesheet" href="css/basics.css" />
<style>
html, body { height: 100%; }
.container {
width: auto;
height: 300px;
}
.container.fluid {
width: auto;
height: 80%;
position: relative;
}
#ex6 .bogey1 {
top: 40%;
left: 200px;
width: 200px;
}
#ex6 .bogey2 {
right: auto;
left: 60px;
}
#fit-demo {
height: 200px;
}
</style>
</head>
<body>
<h1>horizontal examples</h1>
<div id="ex1" class="container">
<div class="item w4"></div>
<div class="item h4"></div>
<div class="item w2"></div>
<div class="item h4"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item h2"></div>
<div class="item w4"></div>
<div class="item w2"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item w2 h2"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item h4"></div>
<div class="item"></div>
<div class="item w4"></div>
<div class="item"></div>
<div class="item w2"></div>
<div class="item"></div>
<div class="item h2"></div>
<div class="item"></div>
<div class="item h2"></div>
</div>
<div id="ex2" class="container">
</div>
<div id="ex3" class="container">
</div>
<div id="ex4" class="container fluid has-padding">
<div class="item w4"></div>
<div class="item h4"></div>
<div class="item w2"></div>
<div class="item h4"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item h2"></div>
<div class="item w4"></div>
<div class="item w2"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item w2 h2"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item h4"></div>
<div class="item"></div>
<div class="item w4"></div>
<div class="item"></div>
<div class="item w2"></div>
<div class="item"></div>
<div class="item h2"></div>
<div class="item"></div>
<div class="item h2"></div>
</div>
<div id="ex6" class="container fluid has-padding">
<div class="bogey bogey1"></div>
<div class="bogey bogey2"></div>
</div>
<div id="fit-demo" class="container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item w2"></div>
<div class="item h2"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
<script src="../bower_components/get-size/get-size.js"></script>
<script src="../bower_components/desandro-matches-selector/matches-selector.js"></script>
<script src="../bower_components/ev-emitter/ev-emitter.js"></script>
<script src="../bower_components/fizzy-ui-utils/utils.js"></script>
<script src="../bower_components/outlayer/item.js"></script>
<script src="../bower_components/outlayer/outlayer.js"></script>
<script src="../js/rect.js"></script>
<script src="../js/packer.js"></script>
<script src="../js/item.js"></script>
<script src="../js/packery.js"></script>
<script src="examples.js"></script>
<script>
// everything horizontal on this page
Packery.defaults.isHorizontal = true;
var ex1 = document.getElementById('ex1');
var packery1 = new Packery( ex1 );
var ex2 = document.getElementById('ex2');
appendRandomSizedItems( ex2 );
var packery2 = new Packery( ex2 );
var ex3 = document.getElementById('ex3');
appendRandomSizedItems( ex3 );
var packery3 = new Packery( ex3, {
columnWidth: 50,
rowHeight: 50
});
var ex4 = document.getElementById('ex4');
var packery4 = new Packery( ex4 );
var ex6 = document.getElementById('ex6');
appendRandomSizedItems( ex6 );
var packery6 = new Packery( ex6, {
itemSelector: '.item',
stamp: ex6.querySelectorAll('.bogey')
});
// ----- fit demo ----- //
( function() {
var container = document.querySelector('#fit-demo');
var pckry = new Packery( container );
pckry.on( 'fitComplete', function( pckryInstance, item ) {
console.log('fit was completed ', item );
});
container.addEventListener( 'click', function( event ) {
// only care about item
var elem = event.target;
if ( !matchesSelector( elem, '.item' ) ) {
return;
}
if ( !matchesSelector( elem, '.gigante') ) {
elem.classList.add('gigante' );
pckry.fit( elem );
} else {
elem.classList.remove('gigante' );
pckry.layout();
}
});
})();
</script>
</body>
</html>