mirror of
https://github.com/flynx/ImageGrid.git
synced 2025-12-27 13:32:01 +00:00
minor changes...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
00151937ff
commit
c7e509abef
@ -10,6 +10,7 @@ function focus(elem){
|
||||
.addClass('current')
|
||||
.trigger('focus')
|
||||
}
|
||||
|
||||
function clickHandler(){
|
||||
focus(this)
|
||||
}
|
||||
@ -39,7 +40,10 @@ function shiftFocus(n){
|
||||
cur.closest('.container')
|
||||
.trigger('shiftfocus', n)
|
||||
|
||||
// XXX will adding a singular [direction] branch make things faster
|
||||
// for n = +/-1 ???
|
||||
var dir = cur[direction+'All']('.square')
|
||||
|
||||
// see if we need to warp arund...
|
||||
if(dir.length < Math.abs(n)){
|
||||
var sq = cur.closest('.container').children('.square')
|
||||
@ -48,6 +52,7 @@ function shiftFocus(n){
|
||||
? (i + n) % sq.length
|
||||
: sq.length - (Math.abs(i + n) % sq.length) ]))
|
||||
}
|
||||
|
||||
// shift the current element...
|
||||
return focus($(dir[Math.abs(n)-1]))
|
||||
}
|
||||
@ -55,13 +60,16 @@ function shiftFocus(n){
|
||||
|
||||
|
||||
// these will roll the container...
|
||||
// XXX make this container context-aware...
|
||||
function rollContainer(n){
|
||||
var sq = $('.current.square')
|
||||
.closest('.container')
|
||||
.children('.square')
|
||||
// right...
|
||||
if(n > 0){
|
||||
return $($('.square').splice(0, n)).appendTo($('.container'))
|
||||
return $(sq.splice(0, n)).appendTo($('.container'))
|
||||
// left...
|
||||
} else if(n < 0){
|
||||
var sq = $('.square')
|
||||
var l = sq.length
|
||||
return $(sq.splice(l+n, l)).prependTo($('.container'))
|
||||
// 0...
|
||||
@ -71,7 +79,8 @@ function rollContainer(n){
|
||||
}
|
||||
|
||||
|
||||
var UPDATE_ELEMENT_TEXT = false
|
||||
// misc demo stuff...
|
||||
var UPDATE_ELEMENT_TEXT = true
|
||||
function toggleNumberUpdate(){
|
||||
if(UPDATE_ELEMENT_TEXT){
|
||||
UPDATE_ELEMENT_TEXT = false
|
||||
@ -81,25 +90,28 @@ function toggleNumberUpdate(){
|
||||
}
|
||||
|
||||
|
||||
|
||||
// init things...
|
||||
$(function(){
|
||||
$('.container')
|
||||
// NOTE: this event will get completed BEFORE the element is focused.
|
||||
.on('shiftfocus', function(evt, n){
|
||||
if(UPDATE_ELEMENT_TEXT){
|
||||
var sq = $('.square')
|
||||
|
||||
// update squares -- numbers...
|
||||
if(UPDATE_ELEMENT_TEXT){
|
||||
var sq = $(this).children('.square')
|
||||
if(n > 0){
|
||||
var s = $('.square').last().text()*1 + 1
|
||||
var s = sq.last().text()*1 + 1
|
||||
} else if(n < 0){
|
||||
var s = $('.square').first().text()*1 + n
|
||||
var s = sq.first().text()*1 + n
|
||||
} else {
|
||||
return
|
||||
}
|
||||
|
||||
rollContainer(n).each(function(i, e){
|
||||
$(this).text(i + s)
|
||||
})
|
||||
|
||||
// roll as-is...
|
||||
} else {
|
||||
rollContainer(n)
|
||||
}
|
||||
@ -155,9 +167,9 @@ $(function(){
|
||||
|
||||
<button onclick="toggleNumberUpdate()">toggle square number update</button>
|
||||
|
||||
|
||||
<div class="meta-container">
|
||||
<div class="container">
|
||||
<!-- BUG: when current is first hell breaks lose... -->
|
||||
<div class="square">1</div>
|
||||
<div class="square">2</div>
|
||||
<div class="square current">3</div>
|
||||
@ -169,8 +181,6 @@ $(function(){
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
<!-- vim:set ts=4 sw=4 : -->
|
||||
</html>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user