3-terrarium/3-intro-to-DOM-and-closures/assignment.md
Now that you've experienced the power of DOM manipulation firsthand, it's time to explore the broader world of DOM interfaces. This assignment will deepen your understanding of how different web technologies interact with the DOM beyond just dragging elements.
By completing this assignment, you will:
Visit MDN's comprehensive list of DOM interfaces and select one interface that interests you. Consider choosing from these categories for variety:
Beginner-Friendly Options:
Element.classList - Managing CSS classes dynamicallyDocument.querySelector() - Advanced element selectionElement.addEventListener() - Event handling beyond pointer eventsWindow.localStorage - Client-side data storageIntermediate Challenges:
Intersection Observer API - Detecting element visibilityMutationObserver - Watching DOM changesDrag and Drop API - Alternative to our pointer-based approachGeolocation API - Accessing user locationAdvanced Exploration:
Web Components - Custom elements and shadow DOMCanvas API - Programmatic graphicsWeb Workers - Background processingService Workers - Offline functionalityCreate a comprehensive analysis (300-500 words) that includes:
Include a simple, working code example that demonstrates your interface in action. This should be:
Structure your submission with clear headings:
# [Interface Name] DOM Investigation
## What It Does
[Technical overview]
## Real-World Example
[Website analysis and implementation details]
## Code Demonstration
[Your working example with comments]
## Reflection
[How this connects to our terrarium project and future applications]
| Criteria | Exemplary (A) | Proficient (B) | Developing (C) | Needs Improvement (D) |
|---|---|---|---|---|
| Technical Understanding | Demonstrates deep understanding with accurate explanations and proper terminology | Shows solid understanding with mostly accurate explanations | Basic understanding with some misconceptions | Limited understanding with significant errors |
| Real-World Analysis | Identifies and thoroughly analyzes actual implementation with specific examples | Finds real example with adequate analysis | Locates example but analysis lacks depth | Vague or inaccurate real-world connection |
| Code Example | Working, well-commented code that clearly demonstrates the interface | Functional code with adequate comments | Code works but needs better documentation | Code has errors or poor explanation |
| Writing Quality | Clear, engaging writing with proper structure and technical communication | Well-organized with good technical writing | Adequate organization and clarity | Poor organization or unclear communication |
| Critical Thinking | Makes insightful connections between concepts and suggests innovative applications | Shows good analytical thinking and relevant connections | Some analysis present but could be deeper | Limited evidence of critical thinking |
Research Strategies:
Writing Guidelines:
Code Example Ideas:
[Insert deadline here]
If you need clarification on any aspect of this assignment, don't hesitate to ask! This investigation will deepen your understanding of how the DOM enables the interactive web experiences we use every day.