Software giant Microsoft has released its second Internet Explorer 10 (IE10) platform preview for developers.

The IE10 Platform Preview Guide for Developers provides an early look at the developer features coming to the next version of Internet Explorer.

With the second Platform Preview, developers can start working with several site-ready HTML5 technologies for building beautiful, interactive Web applications with great performance and security, Microsoft's Dean Hachamovitch wrote in a blog post.

IE10 Platform Preview 2 uses the same HTML5 engine seen in the recent Windows 8 demos. With this update, IE10 continues to deliver support for site-ready HTML5 technologies as well as improving performance.

The IE10 Platform Preview Guide for Developers provides an early look at the developer features coming to the next version of Internet Explorer.

IE10 Platform Preview includes parsing improvements from the W3C (World Wide Web Consortium) HTML5 spec, reflecting that developers can now expect the same behavior in all compliant browsers even for imperfect or invalid markup.

Web Workers

One of the major highlights includes support for Web workers, an interesting technology that allows Web applications to run complex JavaScripts in the background.

Web applications can be more responsive by offloading complex JavaScript to run in the background. For example, casual games might choose to run the logic for the computer player in a Web worker while users take their turn.

Internet Explorer Platform Preview introduces support for Web Workers. The Web Workers API defines a way to run scripts in the background.

Traditionally, browsers have been single-threaded, forcing all the script in your application to run together in a single UI thread. Although you can create the illusion of several things happening at once by using Document Object Model (DOM) events and the setTimeout API, it takes only one computationally intensive task to bring the user experience to a screeching halt.

The Web Worker API provides a way for Web application authors to spawn background scripts that run in parallel with the main page. You can spawn several threads at a time to use for long-running tasks. A new Worker object requires a .js file, which is included via an asynchronous request to the server.

All communication to and from the worker thread is managed through messages. Both the host Worker and the worker script can send messages by using postMessage and listen for a response by using the onmessage event. The content of the message is sent as the data property of the event.

In Internet Explorer Platform Preview, the Web Workers API supports the following:

Method

Description

void close();

Terminates the worker thread.

void importScripts(in DOMString... urls);

A comma-separated list of additional JavaScript files.

void postMessage(in any data);

Sends a message to or from the worker thread.

Attributes

Type

Description

location

WorkerLocation

Represents an absolute URL, including protocol, host, port, hostname, pathname, search, and hash components.

navigator

WorkerNavigator

Represents the identity and onLine state of the user agent client.

self

WorkerGlobalScope

The worker scope, which includes the WorkerLocation and WorkerNavigator objects.

Event

Description

onerror

A runtime error occurred.

onmessage

Message data received.

Positioned Floats

IE10 supports CSS3 Positioned Floats to enable text flows around figures on a page, building on the first Platform Preview's support for CSS3 grid, multi-column, and flexbox. Cascading Style Sheets is a style sheet language used to describe the look and formatting of a document written in a markup language.

Meanwhile, Positioned Floats allow designers to wrap content around other elements on the page, enabling layouts that are unachievable with existing CSS constructs. With positioned floats, Web authors can now wrap text so that it completely surrounds elements, thereby avoiding the traditional limitations of floats.

Instead of limiting elements to floating either to the left or right relative to their position in the document flow, positioned floats can be positioned at a specified distance from the top, bottom, left, or right sides of a containing block, while remaining part of the document flow.

The new functionality has been recently proposed to CSS working group, and is one of the several new features Microsoft is introducing with its IE 10 platform.

Drag 'n' Drop

The latest IE10 preview also enables better support for drag and drop, form validation, positioning of page elements, and more.

Drag-and-drop is something that users have come to take for granted as just working. Internet Explorer 9 and earlier versions of Internet Explorer supports the dataTransfer object and events to drag images, links, and text. Internet Explorer Platform Preview adds the draggable attribute to any element, and drag-and-drop support for one or more files from the desktop to a Web page.

When a user drags a draggable element, Internet Explorer Platform Preview provides a ghost image that moves with the cursor as it's dragged. The draggable attribute is not inherited, so children of an element are not automatically draggable.

No Style Sheet Limitation

In addition, IE10 Platform Preview removes the limitation to the number of syle sheets one can refer per Web page. In Internet Explorer 9 and earlier, there is a limit of 31 style sheets per Web page. There's also a nesting limit of four levels deep for style sheets that are linked using @import rules.

In IE10 Platform Preview, there is no limit to the number of style sheets you can reference per Web page. You are also not limited to how many times you can nest @import rules inside style sheets.

File Reader, HTML 5 Forms validation Supported

IE10 now supports the File Reader API as well as advanced hit testing for more complex selection scenarios like graphics editors, games, and other applications that typically use multiple graphics layers.

File API is a W3C draft Web specification for representing file objects in Web applications, as well as programmatically selecting them and accessing their data. The File API is currently being standardized by the W3C Web Applications Working Group. By using File API, web developers can access local files on the client machine in a secure way without the need of extensions or plugins.

The File API allows a browser to read and manipulate files but only if the user provides permission to do so. Additionally, the File API allows for smoother file upload experiences without plugins.

Other file related improvements include multiple file uploads (4 GB per file) with file type filtering.

IE10 Preview also supports HTML5 Forms validation. HTML5 is the first version of HTML to define the behavior of invalid markup. Rather than relying on fix-up rules that vary from browser to browser, HTML5 parsing behavior is now specified in a way that developers can count on it.

Sandbox

This IE10 Platform Preview now supports HTML5 Sandbox and iframe isolation, an important component to Web application security.

Internet Explorer Platform Preview supports the sandbox attribute, which enables security restrictions for iframe elements that contain untrusted content. These restrictions enhance security by preventing untrusted content from performing actions that can lead to potentially malicious behavior.

When iframe elements are sandboxed, sandboxed content cannot open pop-up windows or new browser windows. Methods that open pop-up windows fail silently. Links cannot be opened in new windows. Even, Plugins (object, applet, embed, or frame) do not instantiate.

Internet Explorer Platform Preview enables customization of selected sandbox restrictions.

Looking forward, developers will be able to build even more amazing sites and applications with IE10's improved HTML5 support.

As different browsers support developers using the same markup to achieve the same results with great performance, we can all realize the promise of HTML5 applications. To this end, we have posted over 270 new tests to the IE Test Center and submitted them to the standards bodies, the blog post added.

Microsoft said it will support IE10 for 10 years after its release, honoring the same product lifecycle commitments as Windows itself.