Home > Features > Dev Depot: Intention.js Restructures HTML in a Responsive Manner • Bookmark   • Newsletters   • Register Search Options


Dev Depot: Intention.js Restructures HTML in a Responsive Manner

Dev Depot: Intention.js Restructures HTML in a Responsive Manner

November 21, 2013
Text size: 
View in Digital Mag
Get XBIZ News
XBIZ Research
Will virtual reality boost the paysite market?
Yes, it will soon
Yes, but in a few years
Out of 179 votes. Results based on votes submitted by members of XBIZ.net social network.

" Developed to easily increase web layout options and flexibility, reduce development time and to lessen dependence on media-query-driven style sheet overrides, Intention.js dynamically restructures HTML in a responsive manner. "

Embracing the concept of responsive web design isn’t always clean and tidy, with many modern sites exhibiting telltale signs of digital sludge under their shiny surfaces — sludge that robs performance and creates a maintenance nightmare.

Enter Intention.js (www.intentionjs.com), which the publisher calls a lightweight tool for responsive design that manipulates the DOM via HTML attributes, so the methods for manipulation are placed with the elements themselves — enabling flexible layouts that do not have to be abstract or messy — but that can serve every imaginable viewing device.

Developed at Dow Jones to easily increase web layout options and flexibility, reduce development time and to lessen dependence on media-query-driven style sheet overrides, Intention.js dynamically restructures HTML in a responsive manner. The script addresses a range of questions, such as “What should an element’s classes be on mobile vs. tablet or where should advertising markup be placed when viewed on a desktop browser, or does a page require an alternate slideshow widget on touch-enabled devices?”

If these are design considerations that you concern yourself with, then Intention.js can provide a solution that alters pages based on the users’ device — with Context.js creating a set of common page contexts for width thresholds, touch devices and high-res displays, along with a standard fallback; with custom contexts and threshold groups easily added.

According to the publisher, Intention.js determines what it calls “threshold groups,” which define the context in which a visitor is viewing your site. These threshold groups work by measuring an axis — such as the browser’s width — or a device’s pixel density (for catering to high resolution screens).

Intention.js offers three basic manipulations: that of attribution, class and placement; allowing users to change the value of any attribute, add or remove an element’s class, and to adjust the position of an element within the structure of the containing document.

Using Intention.js is as simple as flagging an element as “intentional” and giving it an intentional attribute, which can be specific to a change in contexts in an axis, or a specific context passing “true,” or a specific context within a specific axis passing “true.”

While Intention.js responds to numerous device contexts by default, it is a highly scalable solution that is open to any index, so that any type of data that is quantifiable can be used to manipulate a web page — allowing coders to create custom contexts based on anything that they can measure — and then automatically restructure coding in response.

“It’s not just changing a page based on the browser’s width: it’s noticing touch-capabilities, portrait/landscape orientation [and] high resolution contexts,” states a rep. “Intention.js can be taught to restructure pages based on scroll depth, pageviews, [or the] time of day — basically anything!”

One handy feature is the ability to listen for Intention’s first response on page load, such as when wanting to insert specific content or run certain functions. When you don’t want the event handler to keep firing after that first load, jQuery’s Deferred Objects can come into play, but repeating event handlers are easy to setup as well.

Intention.js requires jQuery and Underscore.js and is compatible with all modern web browsers, including Internet Explorer 8 — but developers needing to accommodate this software (still run by legacy Windows XP users) will want to note that although jQuery 2.x dropped support for IE8, Intention will run on older versions of the jQuery libraries.

The script’s website and blog lists a variety of examples, including an interesting use of Intention.js contexts to drive animated characters; but such novelties aside, Intention.js offers a simple yet highly expandable and robust solution for responsive website creation — backed by The Wall Street Journal’s professional team of developers and issued under the MIT License for carefree script modification.

Try Intention.js with your existing framework, or use it to build a site from scratch — either approach helps deliver a website with a high degree of cross-platform compatibility and an engaging user experience.


How Advertisers Use Your Devices to Sell You Stuff

The paranoia has reached an all-time high. Now some people actually believe that their microwave ovens are spying on them — despite the fact they don’t have any listening devices or cameras.... More »

As Mobile Grows, So Does Need to Push Sales

The number of consumers browsing and buying online will reach 270 million by 2020, driven largely by activity on mobile devices, according to Forrester. Business is booming and the fact that most purchases... More »

With AI, Routine Tasks Start Fading Away

I just turned 42. The list of things I may never do again is growing fast. I no longer dream that I will become an Olympian in any sport except archery or horseback riding. The oldest Olympians in those... More »
Stay informed of the latest industry developments. Get XBIZ newsletters delivered to your inbox. Subscribe today!
Enter email address:

* To manage existing subscriptions click here.

Submit your press release to
multiple news outlets with 1 click.
Subscribe to RSS news feeds or
add free content to your website.
Access XBIZ news and articles
with your mobile device.
Access the latest issues of the industry's leading trade publications in digital form. View online or download for offline viewing.


XBIZ.net Paysite Meetup

May 04 - May 04
Prague, Czech Republic

Eurowebtainment 2017

May 17 - May 20
Majorca, Spain

XBIZ Retreat

May 30 - Jun 03
Miami, Florida

XBIZ Miami 2017

May 30 - Jun 02
Miami, Florida
Everyday thousands of business professionals browse XBIZ's industry directory for quality products and services. Not listed yet? Your company could be losing potential new business. Submit your company today!
Use XBIZ RSS feeds to stay informed of the latest industry developments or as a content syndication tool for your website!