Skip to content
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
Cannot retrieve contributors at this time


2.3.1 - 2021-01-17

    • [Improvement] #708 Support restored for Node 6, 8, 10 and 12.

2.3.0 - 2020-11-25

  • [Feature] #682 Multiple word search
  • [Feature] #683 Debounced keyup handler in search
  • [Improvement] #679 Faster search
  • [Website] #684 Add more documentation for automagical search and sort elements

2.1.0 - 2020-11-21

  • [Feature] #634 Add item template function
  • [Feature] #591 Support adding custom pagination item
  • [Bugfix] #667 Fix getAttribute fallback method
  • [Bugfix] #636 Aviod strange ie11 bug
  • [Bugfix] #570 Don't empty original value array when adding items async
  • [Misc] #637 Reuse iteration indices

2.0.0 - 2020-11-21 - Winter cleanup 🧹

  • [Breaking] Drop support for IE6-8
  • [Misc] Update dev dependencies to latest version: Webpack 3.12.0 -> 5.6.0, jest 23.3 -> 26.6.3, jquery 3.3.1 -> 3.5.1, Removed: jshint jshint-loader
  • [Misc] Replace uglify-js with terser
  • [Misc] Update Node for dev from 6.15 to 14.15.1
  • [Misc] Prettier on everything
  • [Misc] Make release script simpler
  • [Misc] Rename to
  • [Misc] Use babal-loader with @babel/preset-env for supporting IE9-11
  • [Misc] Add source-maps to /dist
  • [Misc] Added for feature requests to allow cleanup of issue list.
  • [Misc] Update CircleCI from 1.0 to 2.0
  • [Website] Update Jekyll to remove security warnings
  • [Website] Fix all examples (sorry that they we're broken)
  • [Website] Use https instead of http for
  • [Website] Update Contribute guidelines See commit →
  • [Bugfix] Use one event listener per pagination and select page via data attributes See commit →
  • [Bugfix] Don't break pagination if page=0 See commit → See commit →

2017-01-29 v1.5.0

  • [Feature] Bundle fuzzySearch and pagination plugins into List.js
    See commit →
  • [Misc] Switch from Grunt to Webpack and from Mocha to Jest
    See commit →

2017-01-19 v1.4.1

  • [Bugfix] Move string-natural-compare to dependencies instead of devDependencies See commit →

2017-01-15 v1.4.0

  • [Bugfix/Feature] Change natural-sort library to support custom alphabets and thereby handle JavaScripts unicode bugs like sorting ÅÄÖ in Swedish wrong. See commit →

2016-10-23 v1.3.0

2016-02-27: v1.2.0

It's been two years since the last update of List.js. That is absolutely not ok and I'm very sorry that it has taken so long. I promise I'll do better in the future!

Anyways, this release introduces a bunch of bug fixes and improvements, but most importantly: List.js now has support for data attributes PLUS all other attributes. See an example and read the docs.

Another noteworthy update is that I've left Component and moved back all utils to the core lib. Instead I'm using Browserify as module handler.

I hope you'll like this update!

  • [Misc] Move form Component to Browserify See commit →
  • [Misc] Add tests to make sure List.js works with require.js See commit →
  • [Misc] Update all dependencies to latest version See commit →
  • [Breaking] set sort order with List.js not sort function. See commit →
  • [Breaking] set default page size to 10000 instead of 200 (because: page size is confusing for new users) See commit →
  • [Breaking] Rename list.helpers to list.utils See commit →
  • [Feature] Add support for data attributes and custom attributes ex. links and images. See docs. See commit →
  • [Feature] Add toJSON method. See commit →
  • [Feature] Add reIndex method that should be called if the html have been changed by something except List.js. See commit →
  • [Feature] Add option searchColumns to defined default columns to search in. See commit →
  • [Feature] Support in options.item See commit →
  • [Feature] Make it possble to add event handlers on init new List('listId', { searchComplete: function(list) {} }). See commit →
  • [Bugfix] Don't throw error if searching in a empty list. See commit →
  • [Bugfix] Make it possible to use item.visible() on items not yet templated. See commit →
  • [Bugfix] Include reference to List when initializing plugins. Fix for require.js which don't have a global reference to List. See commit →
  • [Bugfix] Fix index async. Fix #268 See commit →
  • [Bugfix] Fix add async See commit →
  • [Bugfix] Don't add empty item if empty list is initated with empty array. See commit →
  • [Bugfix] Make sort case insensitive by default for the automatic buttons See commit →
  • [Bugfix] Clear all values from source item. Case: list.add({}) should not get same values as first item in list See commit →

2014-02-03: 1.1.1

  • [Bugfix] Update javve/events version which fixes critical bugs in Safari for PC and PhantomJS (which makes the command line tests work again).
  • [Bugfix] Clear search when clicking in the HTML5 clear button.
  • [Misc] Add file for changelog instead of having it at

2014-02-03: 1.1.0

  • [Breaking] The sorting API is update so it looks like this listObj.sort('name', { order: "asc "}) and listObj.sort('name', { order: "desc "}) instead or listObj.sort('name', { desc: true/false }).
  • [Feature] Added support for default sort function new List('id', { sortFunction: function(itemA, itemB) { .. }})
  • [Feature] Adding data-order="asc/desc" to a sort button makes that button only sort asc or desc, ie no to
  • [Bugfix] Fix grunt watch bug.
  • [Bugfix] Remove sorting when searching and filtering.
  • [Bugfix] Fix sorting and search when using pagiation plugin

2014-01-17: 1.0.2

  • [Bugfix] Fix error that broke the lib in IE8.

2013-11-12: 1.0.0

  • [Feature] Add more events and enable to add them on initialization.
  • [Feature] Add support for Component.js, Bower, RequireJS and CommonJS
  • [Feature] Make it possible to remove event handlers by .off('event', handler)
  • [Improvement] Many new tests
  • [Improvement] Paging plugin default classes and structure now correspons to Twitter Bootstraps pagination.
  • [Improvement] Make sorting case-insensitive (thanks @thomasklemm)
  • [Improvement] Add item._values for direct access to a items values. Simplifies debugging. Note: Always use item.values() when interacting with the values.
  • [Bugfix] .add(items, callbak) with callback set does no longer add an extra item.
  • [Bugfix] templater.set() no longer is called twice in a templater.get() call.
  • [Bugfix] Fix error when trying to sort undefined,null,etc values.
  • [Bugfix] Fix error when trying to search undefined,null,etc values.
  • [Bugfix] Fix issue #51, problems with filters/search + paging.
  • [Misc] Almost completely rewritten codebase and started using Component
  • [Misc] Moved the website into another repo called list-website
  • [Misc] Add documentation for searching in specific columns.
  • [Change] listObj.get('valueName', value) does now always returns an array. Previously it return an object if only one item matched and null if no match was found.
  • [Change] The default sort order is now asc instead of desc.
  • [Change] Syntax for searching in specific columns are now .search('val', [ 'columnName', 'columnName2' ]) instead of .search('val', { columnName: true, columnName2: true }).
  • [Change] Move plugins into seperated repos: and
  • [Change] Plugin initiation have changed. See getting started with plugins

2012-04-24: 0.2.1

  • Fuzzy Search plugin, .filter() changes and bug fixes Read more »

2012-01-23: 0.2.0

2011-12-15: 0.1.4

  • .filters(), .sort() and .search() now deped on each other. If the list is filtered and then there is a search, the items hidden by the filters will stay hidden etc.
  • .filter() is the only way to reset filter. .filter(false) does not work anymore.

2011-11-29: 0.1.3 release

  • Added function .clear() that removes all items from the list
  • Changed the sort function to be based on data-sort instead of rel
  • When sorting one category, all sort-related classes will be removed from the other sort buttons
  • Updated .sort(valueName, sortFunction) to .sort(valueName, options), se more info in the documentation

2011-11-16: 0.1.2 release

  • Sorting is now indicated by class asc or desc at sorting buttons
  • Added three new small helper functions hasClass(element, class), addClass(element, class)`` and removeClass(element, class)`

2011-10-20: 0.1.1 release

  • Added possibility to reverse sort the list

2011-10-18: 0.1 release

  • Examples at works in IE7,8,9 (IE6 is not tested, should work)
  • More documentation
  • Misc bug fixes

2011-10-15 Final alpha 0.3 release

  • More documentation
  • Only show 200 items at same time, huge speed increase
  • Misc bug fixes

2011-08-08 Alpha 0.2 release

  • Added asynchronous item adding
  • Added asynchronous list indexing
  • Improved (but incomplete) documentation
  • Bugfixes and improved helper functions
  • Show helper functions non-minified

2011-07-25 Alpha 0.1 release