diff --git a/javascript/SelectionGroup.js b/javascript/SelectionGroup.js index 8949b4595..2508de5b9 100755 --- a/javascript/SelectionGroup.js +++ b/javascript/SelectionGroup.js @@ -1,27 +1,13 @@ (function($) { $(document).ready(function() { $('ul.SelectionGroup input.selector').livequery('click', function(){ - var prnt = this.parentNodeWithTag('ul'); - var li = this.parentNodeWithTag('li'); - var i, item, allItems = prnt.childNodes; - for(i=0;item=allItems[i];i++) if(item.tagName) { - if(item == li) { - Element.addClassName(item, 'selected') - } else { - Element.removeClassName(item, 'selected') - } - } + var li = $(this).parent('li') + li.addClass('selected'); + + var prev = li.prevAll('li.selected'); + if(prev.length) prev.removeClass('selected'); + var next = li.prevAll('li.selected'); + if(next.length) next.removeClass('selected'); }); }) })(jQuery); - -SelectionGroupSelector = Class.create(); -SelectionGroupSelector.prototype = { - parentNodeWithTag: function(tagName){ - var el = this.parentNode; - while(el.parentNode && el.tagName.toLowerCase() != tagName) el = el.parentNode; - return el; - } -} - -SelectionGroupSelector.applyTo('ul.SelectionGroup input.selector'); \ No newline at end of file