Javascript

How to migrate to Aria Templates with noder-js

As explained in this blog article, the latest non-backward-compatible release of Aria Templates (1.6.1) changes the way in which dependencies are managed by the framework. Thanks to the integration of noder-js, you are able to retrieve the dependencies you need in your modules with the require syntax, as dictated by the CommonJS specifications. The purpose of this …

Ghost clicks in mobile browsers

Ghost clicks are not new in mobile browsers, there is already literature on the web and some solutions to get rid of them (see resources at the end), but it is a complex problem and browsers manage them in different ways. So, let’s review the full problem and see how it is possible to address …

Calendar Widget Plugin

Inspired by the Dojo calendar, the calendar widget displays events from a data store along time, allowing a user to interactively edit the position in time of these events. Download the Calendar on GitHub View the Sample Application on ariatemplates.com   Table of contents 1. Loading the calendar 2. Passing data to the calendar 2.1 …

Generator for AT project scaffolding

Following the modern trend in web development, we are happy to tell you that the Aria Templates automatic tool to create project scaffolding is here. Now, with the generator-ariatemplates, creating a basic AT project, a single AT skeleton file and an ‘Hello World’ project is something that you can do very fast. The goal of …

Userscripts: Augmenting and automating web browsing and debugging

If you’re a JavaScript developer and don’t know what “userscript” means, you should keep reading. Userscripts are a powerful way to enhance and personalize your browsing experience and also help in some specific debugging purposes (without the power of the Fiddler, but much easier to use). The implemention of the idea started off in 2004 …

Aria Templates 1.3.1

Aria Templates 1.3.1 is finally available for the community. As usual you can get if from github 1.3.1, our website or npm. Few words on our release process and versioning first. We usually release a stable version every 3 weeks. Each of this versions comes with new features and bugfixes. Version number is compatible with …

Cross-browser code is harder than you think

If you’re following JavaScript best practices or good patterns you know already how bad it is to extend native objects’ prototype, in this article we’ll see why this practice should be avoided and also why polyfills might hurt your feelings. Software is hard, and having to write code meant to run in different browsers versions …

Function rewrite and closure scope

The best thing about JavaScript is its implementation of functions. Functions are first-class objects. As such they can be constructed at run-time, passed as arguments to other functions, returned from a subroutine, or assigned into variables, objects, and arrays. These features provide the base for functional programming but require a better understanding of dynamic scoping. …

Standalone popups

In AriaTemplates, popups are widgets, it means you get to open a popup from within a template, using the following syntax: {@aria:Dialog { … } /} And you would then bind the visible property of that widget to some value in the data model in order to decide when the popup is visible and when …