Java Script Framework
- Is a heavy-weight framework acceptable, or will light-weight options do?
- Is security an issue? When sensitive data and ajax are to be used together, the framework should support secure XmlHttpRequests.
- Is accessibility an issue?
- How much and what kind of performance is needed? DOM traversals in large pages? Many event handlers attached to DOM nodes?
The criteria are sorted by order of relevance in 3 categories:
- A -> Must
- B -> Should
- C -> Nice to
Cat. A - Must
Cat. B - Should
- Sufficient functionalities available
- Sophisticated functionalities (for scientific use)
- Fits to other JS Frameworks
- Unique coding style
- Supports CSS1-3
- Easy to learn/adopt
- Easy to reuse, to customize and maintain
- Subversion or CVS version repository
Cat. C - Nice to
- Knowledge base (in house)
List of Frameworks
This list is not exhaustive, but it lists the most common frameworks.
|Yahoo! UIL |||JQuery |||ExJS |||Prototype |||Scriptaculous |||Dojo |||MooTools ||
|Library footprint size||-||++||+||++||+(+)||-||++|
|Number of patterns||++||++||++||+||+||+||+|
|Fits to other JS Frameworks||?||+||+||?||?||?||?|
|Unique coding style||?||++||+||++||+||+||+|
|Easy to learn/adopt||-||++||+||++||++||+||+|
|Easy to reuse, to customize and maintain||+||++||+||++||++||+||+|
|Subversion or CVS version repository||-||+||-||-||-||-||-|
Requirements collected from "eSciDoc Components/Behaviour"
- Instant grid filter
- Layer for input field/filter
- Draggable corners (if cells contain more than they can display)
- Client side sorting
- Resizable columns
- Layers (open + close areas)
- Auto Suggests
There is a need to indicate exactly where the mouse is pointing. The user must be kept from pointing to the wrong menu entry when clicking. Especially when the response will not be immediate, click targets are small or little contrast is given. The highlight can also indicate/enlarge a click target. A change in background colour or any another property is invoked (e.g. via CSS Pseudo-Classes). Usually the background of the element changes from dark to bright or vice versa. The highlight should not make the contrast worse or appear animated. It is also common to make the highlighted text underlined to indicate clickable targets.
- Transition of Submenus
There are a lot of menu options and it has to be made clear where the submenu derives from. When a submenu is opened, it stretches from the main menu option to its final size, position or opacity. The movement must indicate from which direction the submenu arrives without imposing a noticeable delay to the user. The time should be less than 300ms.
> TBD some values should be provided concerning response time