Here is the list of libraries for today:
- jQuery. Modern classics. jQuery 3.0 is almost here. You can already try the 3.0 release candidate version of this library. It’s available via CDN or npm.
- Kendo UI is another widespread library that is based on jQuery. Let’s check if there are any new updates available.
- dhtmlxSuite is probably not so well-known as the previous two, but there was a major release recently, and now we can use visual development tools. Another new feature is Material Design support, so I guess we can give it a try.
The state of the jQuery library at the time of writing this is version 3.0 Release Candidate. Let’s check the list of updates.
jQuery 3.0 Release Candidate Features
First of all, jQuery 3.0 will become the only and main version of the library. The 1.12 and 2.2 branches won’t get new features. The new version of jQuery won’t support IE6-8. You should use version 1.12 if IE6-8 support is crucial for you. To avoid problems, better check 3.0 Upgrade Guide.
jQuery.Deferred objects have been updated for compatibility with Promises/A+ and ES2015 Promises resulting in changes of the
- An exception thrown in a
.then()callback now becomes a rejection value. Previously, exceptions bubbled all the way up, aborting callback execution and irreversibly locking both the parent and child Deferred objects.
- The resolution state of a Deferred created by
.then()is now controlled by its callbacks—exceptions become rejection values and non-thenable returns become fulfillment values. Previously, returns from rejection handlers became rejection values.
- Callbacks are always invoked asynchronously. Previously, they would be called immediately upon binding or resolution, whichever came last.
You can always recover the behavior of the
then(), method from the previous versions of jQuery by using the
.pipe() method which is deprecated in the third version.
jQuery Deferred Reporter Plugin is a new plugin that was built to help in debugging Promises/A+ compatible Deferreds.
catch() method was added to promise objects as an alias for
.error were removed from the library. Instead of using them, you should register new listeners using
Now, jQuery uses requestAnimationFrame API, which should lead to smoother animation with less CPU usage. This feature will be extremely important for mobile applications because it will help to save battery power.
Speedups for some custom jQuery selectors were achieved. Developers have identified the way to eliminate the amount of produced work when custom selectors like
:visible are used many times in the same document. That particular case is up to seventeen times faster now. Despite this news, you should remember that selectors like
:hidden still can be expensive.
Kendo UI Recent Updates
Kendo UI is a framework that was developed by the Telerik company. It contains a collection of UI widgets such as grid, charts, drop-down menus, and others. It’s based on jQuery and uses HTML5 and CSS3.
Let’s check the current state of this library. There are no revolutionary improvements, but for those who use it, there’s a lot of interest.
We’ll start with the updates that affected all available components. First of all, the bundled jQuery version was updated to version 1.12.3. Source files are now distributed as separate packages in the downloads section. The address memory leak in IE after calling
kendo.saveAs() was fixed.
For the Calendar widget, changing the month with the date disabled is impossible if the selected date in the current month is the same as the disabled date in the month we try to navigate to.
The Chart component now has support for events and a pinch to zoom feature when rendering to Canvas. The pane title color now inherits chart title color to match the current theme. They also added a new chart type: Vertical Box Plot.
The Diagram widget now automatically updates its shape when binding to HierarchicalDataSource and an item is changed.
fontStyle options were added, and they improved selection and drag-and-drop behavior on mobile devices.
Actually, the full list of recent updates and fixes is too big to describe them in a single paragraph. You can check it out here.
Let’s take a look at the new features.
The main new feature of dhtmlxSuite 5.0 is Material Skin:
From now on, all widgets and components implement the Google Material Design concept. For the fans of this clean and neat approach, there’s more good news: This skin is available by default, so there’s no need for extra effort. To check how the new Material Skin looks like, check this demo page.
New Widget: TreeView
dhtmlxTreeView is a component that allows visualizing the hierarchical data in the form of a tree. It’s faster and more lightweight than the already existing dtmlxTree, and the developers assure that it works faster with large amounts of data.
Distinctive features of this new component are drag-and-drop support, checkboxes, multi-selection, etc.
Programming Tools: Form Builder and Visual Designer
Form Builder is a brand new tool that simplifies the process of form creation:
Form Builder consists of the following parts:
- Toolbar–Import and Export buttons.
- Tree–that represents the hierarchical state of the form you are creating.
- Editor–central part of the Builder that defines the place for the components. Editor has two buttons: Mockup for creating the layout of the form and Preview, which shows how this form looks.
- Item Configuration Block–allows changing the properties of existing components.
Well, nothing complex here. It will look familiar if you worked with visual development tools earlier, and it should not take much time to learn how it works. You can try it here. For more info, check the documentation page.
Another visual development tool, Visual Designer, hasn’t changed much.
It allows you to build interfaces for web applications. You can define the interface structure and manipulate UI elements without writing a line of code. Unfortunately, the recent update affected only the visual part of this tool. Now, it looks neater.
Font Awesome Support, Fixes, and Improvements
Controls built with dhtmlxSuite 5.0 supports Font Awesome icons. Now you can use this famous icon collection in your apps.
Besides the described changes, developers have fixed a wide variety of bugs and added a bunch of little updates. The full list is available here.