GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Read the reference →
  • Explore an example
  • Read the historical template →
  • Home
  • Start here
  • API
  • Security
  • Sandboxing
  • History
  • FAQ
  • Glossary
  • About
  • Editorial standards
  • Contact

This view

  • Original page
  • New address

GeezerVison is showing www.adsafe.org — ADsafe: JavaScript, with boundaries

AI-generated illustration of pale sage interface panels connected across a warm cream tabletop.

JavaScript, with boundaries.

Learn how a restricted language limited guest code. Follow its controlled interface to the page.

Understand the boundary →
AI-generated editorial image of a light programming desk with a cream laptop and sage reference sheets.

Read the reference

  • Widget Structure↗

    How the host, HTML fragment and guest code fit together.

  • DOM API↗

    Selections, bunch objects and a mediated view of the document.

  • The runtime source↗

    Read the historical implementation with its original notice.

AI-generated editorial image of an open cream research notebook, pencil and sage diagram notes.

From the notebook

JavaScript · A practical introduction

JavaScript widget boundaries

A small API and an enforced boundary are different things. Follow the objects, permissions and browser mechanisms involved.

Read the article →
AI-generated educational illustration of a guest widget connected to its host through a limited interface.

Explore an example

  • Roman numerals↗

    A new converter, one input and one output.

  • Bats & events↗

    A small illustration of local event handling.

  • Sudoku & state↗

    A four-by-four puzzle that keeps its state in the browser.

AI-generated editorial image of archival reference sheets and a pale sage binder clip on an ivory desk.

About this edition

New explanations of a historic project, with the original JavaScript topic and routes retained.

These examples are newly written. They do not load the legacy runtime or claim ADsafe validation.

How this site uses sources →

Explore the reference

  • Getting started with ADsafe

    Read the historical ADsafe workflow: the JavaScript subset, a DIV wrapper, shared ID prefixes, validation and approved libraries.

  • ADsafe API reference

    Reference for ADSAFE.go, id, lib, get and set, DOM queries, bunch objects, events and restricted names, checked against the bundled runtime.

  • ADsafe security model and limits

    Understand ADsafe’s trusted host, restricted language, mediated DOM, capability leakage, prototype assumptions and historical limitations.

  • ADsafe examples, step by step

    Walk through a bounded text update, an event handler and local widget state, then read the Roman, Bats and Sudoku examples with their limits in view.

  • JavaScript sandboxing explained

    Learn the object-capability idea behind ADsafe and compare its historical subset with Caja, SES compartments and browser sandboxed iframes.

  • A short history of ADsafe

    A source-led account of Douglas Crockford’s historical ADsafe project, its original documentation, the bundled runtime and this independent edition.

  • ADsafe questions and answers

    Answers about ADsafe validation, guest widgets, DIV identifiers, approved libraries, dynamic properties, events and the limits of this historical reference.

  • ADsafe glossary

    Definitions of ADsafe terms: guest, host, widget, capability, verifier, bunch, hunters, peckers, mediated DOM, library and interceptor.

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.