document.createTouchList() is a deprecated, non-standard instance method that once built a TouchList from zero or more Touch objects (see MDN Document: createTouchList()). Learn MDN’s empty / one / many examples, how it pairs with createTouch(), safe feature detection, and five try-it labs that still work when the API is missing.
01
Kind
Instance method
02
Returns
TouchList
03
Args
0..N Touches
04
Pairs with
createTouch()
05
Status
Deprecated
06
Also
Non-standard
Fundamentals
Introduction
A TouchList is a list of active finger contacts — the kind of collection you normally read from touchstart / touchmove via event.touches or event.changedTouches.
Legacy engines also exposed document.createTouchList(...) so scripts could assemble those lists by hand (often after createTouch()). MDN now labels both helpers deprecated and non-standard.
💡
Legacy recipe (MDN)
1) Build Touch points with createTouch (if present) 2) Wrap them with createTouchList(touch1, touch2) 3) Modern apps: use real event TouchLists instead
Document.createTouchList() is Deprecated and Non-standard on MDN. Logos use the shared browser-image-sprite.png sprite from this project. Many modern engines omit or removed this factory — do not ship new features that depend on it.
✓ Deprecated · Non-standard
Document.createTouchList()
Legacy TouchList factory — missing in many current browsers. Prefer real event.touches / Pointer Events.
LegacyNot for new apps
Google ChromeLegacy createTouchList removed / omitted in modern versions
Avoid
Mozilla FirefoxLegacy / restricted; do not depend on it for new code
Avoid
Apple SafariTreat as unavailable for new products
Avoid
Microsoft EdgeChromium Edge: treat as unavailable for new code
Avoid
OperaFollow Chromium legacy removal
Avoid
Internet ExplorerNo practical modern createTouchList path
Unavailable
createTouchList()Avoid
Bottom line: Feature-detect if you must read legacy code. For new work, use real touch event lists or Pointer Events — never rely on createTouchList().
Wrap Up
Conclusion
document.createTouchList() was a legacy factory for TouchList objects. MDN marks it deprecated and non-standard. Feature-detect if you must read old samples that also use createTouch(), then migrate to real touch or pointer input for production UI.
Treat this API as historical / migration knowledge
Feature-detect with typeof document.createTouchList === "function"
Read real event.touches / changedTouches in apps
Check createTouch too when following MDN’s full sample
Prefer Pointer Events when you need cross-input UI
❌ Don’t
Use createTouchList in new production code (MDN)
Call it without a feature check
Assume Chromium still ships this factory
Detect “mobile” by checking for createTouchList
Ignore the paired legacy createTouch dependency
Summary
Key Takeaways
Knowledge Unlocked
Five things to remember about createTouchList()
Legacy TouchList factory — deprecated and non-standard.
5
Core concepts
📝01
Returns
TouchList
MDN
⚠️02
Status
Deprecated
MDN
🛡03
Also
Non-standard
MDN
💡04
Args
0..N Touch
MDN
🔎05
Safety
feature-detect
required
❓ Frequently Asked Questions
MDN: Document.createTouchList() creates and returns a new TouchList object containing zero or more Touch objects you pass in.
Yes. MDN marks Document.createTouchList() as Deprecated and Non-standard. It is not part of any current specification and is no longer on track to become a standard.
MDN: zero or more Touch objects (touch1 … touchN). Firefox also accepted an array of Touch objects.
Legacy samples often called createTouch() to build Touch points, then createTouchList() to wrap them. Both APIs are deprecated and non-standard.
Often no. Chromium removed legacy createTouch / createTouchList years ago. Always feature-detect typeof document.createTouchList === "function" before calling it.
For real interaction, listen to touch events (changedTouches / touches) or prefer Pointer Events. Avoid synthesizing TouchList with this legacy Document factory in new apps.
Did you know?
MDN’s example creates an empty TouchList with document.createTouchList() — no arguments required. That empty list was useful in old tests, but today you should get TouchLists from real events instead of synthesizing them with a removed Document method.