Important: Chrome will be removing support for Chrome Apps on all platforms. Chrome browser and the Chrome Web Store will continue to support extensions. Read the announcement and learn more about migrating your app.

Disabled Web Features

Though Chrome Apps use the web platform, some web features have been disabled or else are used in a different way. Mainly this is to avoid security issues and to improve programming practices. Below is a summary of the disabled features of the web platform and potential work-arounds:

Disabled Work-around
alert Use a custom lightbox/popup.
Browser chrome APIs N/A.
confirm Use a custom lightbox/popup.
document.cookie Packaged app pages are not rendered on the server, so there is no need to use these.
document.close N/A. N/A.
document.write Use document.createElement.
External resources Use the webview tag for iframes. See Embed Content and Webview Tag API. Video and audio are allowed to have non-local URLs.
Flash Use HTML5 Platform.
Form submission Use JavaScript to process form content (listen for submit event, process data locally first before sending to server).
javascript: urls You cannot use bookmarklets for inline javascript on anchors. Use the traditional click handler instead.
localStorage Use IndexedDB or the Storage API (which also syncs to the cloud).
Navigation Links open up with the system web browser. window.history and window.location are disabled.
Non-sandboxed plugins N/A.
showModalDialog Use a custom lightbox/popup.
Synchronous XMLHttpRequest Use async-only XMLHttpRequest: Getting Rid of Synchrounous XXRs.
User Text selection By default, users can no longer select text like they can on a web page. To make areas of the app's text selectable, apply the CSS style, -webkit-user-select: text;.
webSql Use IndexedDB or Filesystem API.

Back to top