diff --git a/.tern-project b/.tern-project new file mode 100644 index 0000000000..22bd8f4635 --- /dev/null +++ b/.tern-project @@ -0,0 +1,7 @@ +{ + "ecmaVersion": 6, + "libs": [ + "browser" + ], + "plugins": {} +} \ No newline at end of file diff --git a/01 - JavaScript Drum Kit/donebyme.html b/01 - JavaScript Drum Kit/donebyme.html new file mode 100644 index 0000000000..eded585292 --- /dev/null +++ b/01 - JavaScript Drum Kit/donebyme.html @@ -0,0 +1,87 @@ + + + + + + JS Drum Kit + + + + + + +
+
+ A + clap +
+
+ S + hihat +
+
+ D + kick +
+
+ F + openhat +
+
+ G + boom +
+
+ H + ride +
+
+ J + snare +
+
+ K + tom +
+
+ L + tink +
+
+ + + + + + + + + + + + + + + + + diff --git a/01 - JavaScript Drum Kit/index-START.html b/01 - JavaScript Drum Kit/index-START.html index 4070d32767..fa18d8ed53 100644 --- a/01 - JavaScript Drum Kit/index-START.html +++ b/01 - JavaScript Drum Kit/index-START.html @@ -1,66 +1,64 @@ - - - - - JS Drum Kit - - - - - -
-
- A - clap -
-
- S - hihat -
-
- D - kick -
-
- F - openhat -
-
- G - boom -
-
- H - ride -
-
- J - snare -
-
- K - tom -
-
- L - tink -
-
- - - - - - - - - - - - - - - - + + + + + + JS Drum Kit + + + + + + +
+
+ A + clap +
+
+ S + hihat +
+
+ D + kick +
+
+ F + openhat +
+
+ G + boom +
+
+ H + ride +
+
+ J + snare +
+
+ K + tom +
+
+ L + tink +
+
+ + + + + + + + + + + + + + diff --git a/02 - JS and CSS Clock/donebyme.html b/02 - JS and CSS Clock/donebyme.html new file mode 100644 index 0000000000..1905c4ad98 --- /dev/null +++ b/02 - JS and CSS Clock/donebyme.html @@ -0,0 +1,103 @@ + + + + + + JS + CSS Clock + + + + + +
+
+
+
+
+
+
+ + + + + + + + diff --git a/02 - JS and CSS Clock/index-START.html b/02 - JS and CSS Clock/index-START.html index ee7eaefb1f..157b7947b7 100644 --- a/02 - JS and CSS Clock/index-START.html +++ b/02 - JS and CSS Clock/index-START.html @@ -1,74 +1,72 @@ - - - - - JS + CSS Clock - - - - -
-
-
-
-
-
-
- - - - - - - + + + + + + JS + CSS Clock + + + + + +
+
+
+
+
+
+
+ + + + + + + + diff --git a/03 - CSS Variables/donebyme.html b/03 - CSS Variables/donebyme.html new file mode 100644 index 0000000000..30e2905a2c --- /dev/null +++ b/03 - CSS Variables/donebyme.html @@ -0,0 +1,80 @@ + + + + + + Scoped CSS Variables and JS + + + +

Update CSS Variables with JS

+ +
+ + + + + + + + +
+ + + + + + + + + + diff --git a/03 - CSS Variables/index-START.html b/03 - CSS Variables/index-START.html index ca2b59d077..39bfb33c79 100644 --- a/03 - CSS Variables/index-START.html +++ b/03 - CSS Variables/index-START.html @@ -1,54 +1,54 @@ - - - - - Scoped CSS Variables and JS - - -

Update CSS Variables with JS

- -
- - - - - - - - -
- - - - - - - - - + + + + + + Scoped CSS Variables and JS + + + +

Update CSS Variables with JS

+ +
+ + + + + + + + +
+ + + + + + + + + + diff --git a/04 - Array Cardio Day 1/donebyme.html b/04 - Array Cardio Day 1/donebyme.html new file mode 100644 index 0000000000..34351c554f --- /dev/null +++ b/04 - Array Cardio Day 1/donebyme.html @@ -0,0 +1,89 @@ + + + + + Array Cardio ๐Ÿ’ช + + +

Psst: have a look at the JavaScript Console ๐Ÿ’

+ + + diff --git a/04 - Array Cardio Day 1/index-START.html b/04 - Array Cardio Day 1/index-START.html index eec0ffc31d..a6c0a224d3 100644 --- a/04 - Array Cardio Day 1/index-START.html +++ b/04 - Array Cardio Day 1/index-START.html @@ -11,7 +11,7 @@ // ## Array Cardio Day 1 // Some data we can work with - + /* jshint esversion: 6 */ const inventors = [ { first: 'Albert', last: 'Einstein', year: 1879, passed: 1955 }, { first: 'Isaac', last: 'Newton', year: 1643, passed: 1727 }, @@ -31,22 +31,35 @@ // Array.prototype.filter() // 1. Filter the list of inventors for those who were born in the 1500's - + const inventors_1500 = inventors.filter(inventor => { + return (inventor.year >= 1500 && inventor.year < 1600); + }); + console.table(inventors_1500); // Array.prototype.map() // 2. Give us an array of the inventors' first and last names - + const inventors_first_last = inventors.map(inventor => { + return `${inventor.first}, ${inventor.last}`; + }); + console.log(inventors_first_last); // Array.prototype.sort() // 3. Sort the inventors by birthdate, oldest to youngest - + const inventors_byrthday = inventors.sort((a,b) => a.year > b.year ? 1 : -1); + console.table(inventors_byrthday); // Array.prototype.reduce() // 4. How many years did all the inventors live? - + const inventors_years_lived = inventors.reduce((total, inventor) =>{ + return total + (inventor.passed - inventor.year); + }, 0); + console.log(inventors_years_lived); // 5. Sort the inventors by years lived - + const inventors_by_years = inventors.sort((a,b) => (a.passed-a.year) > (b.passed-b.year) ? 1 : -1); + console.log(inventors_by_years); // 6. create a list of Boulevards in Paris that contain 'de' anywhere in the name // https://en.wikipedia.org/wiki/Category:Boulevards_in_Paris - - + // const mw_category = document.querySelector('.mw-category'); + // const bule = Array.from(mw_category.querySelectorAll('a')); + // const de_bule = bule.map(b => b.textContent).filter( b => b.includes('de')); + // -------------------------------- // 7. sort Exercise // Sort the people alphabetically by last name diff --git a/05 - Flex Panel Gallery/donebyme.html b/05 - Flex Panel Gallery/donebyme.html new file mode 100644 index 0000000000..15257137e4 --- /dev/null +++ b/05 - Flex Panel Gallery/donebyme.html @@ -0,0 +1,149 @@ + + + + + Flex Panels ๐Ÿ’ช + + + + + + +
+
+

Hey

+

Let's

+

Dance

+
+
+

Give

+

Take

+

Receive

+
+
+

Experience

+

It

+

Today

+
+
+

Give

+

All

+

You can

+
+
+

Life

+

In

+

Motion

+
+
+ + + + + + + diff --git a/06 - Type Ahead/donebyme.html b/06 - Type Ahead/donebyme.html new file mode 100644 index 0000000000..fca79ac724 --- /dev/null +++ b/06 - Type Ahead/donebyme.html @@ -0,0 +1,56 @@ + + + + + Type Ahead ๐Ÿ‘€ + + + + +
+ + +
+ + + diff --git a/07 - Array Cardio Day 2/donebyme.html b/07 - Array Cardio Day 2/donebyme.html new file mode 100644 index 0000000000..2735708fd1 --- /dev/null +++ b/07 - Array Cardio Day 2/donebyme.html @@ -0,0 +1,55 @@ + + + + + Array Cardio ๐Ÿ’ช๐Ÿ’ช + + +

Psst: have a look at the JavaScript Console ๐Ÿ’

+ + + diff --git a/08 - Fun with HTML5 Canvas/donebyme.html b/08 - Fun with HTML5 Canvas/donebyme.html new file mode 100644 index 0000000000..4fd41c7d59 --- /dev/null +++ b/08 - Fun with HTML5 Canvas/donebyme.html @@ -0,0 +1,53 @@ + + + + + HTML5 Canvas + + + + + + + + + diff --git a/10 - Hold Shift and Check Checkboxes/donebyme.html b/10 - Hold Shift and Check Checkboxes/donebyme.html new file mode 100644 index 0000000000..8d196a1fa8 --- /dev/null +++ b/10 - Hold Shift and Check Checkboxes/donebyme.html @@ -0,0 +1,132 @@ + + + + + + Hold Shift to Check Multiple Checkboxes + + + + + +
+
+ +

This is an inbox layout.

+
+
+ +

Check one item

+
+
+ +

Hold down your Shift key

+
+
+ +

Check a lower item

+
+
+ +

Everything inbetween should also be set to checked

+
+
+ +

Try do it with out any libraries

+
+
+ +

Just regular JavaScript

+
+
+ +

Good Luck!

+
+
+ +

Don't forget to tweet your result!

+
+
+ + + + + diff --git a/11 - Custom Video Player/index.html b/11 - Custom Video Player/index.html index 281a15eaa8..23e2ceda1e 100644 --- a/11 - Custom Video Player/index.html +++ b/11 - Custom Video Player/index.html @@ -22,6 +22,6 @@ - + diff --git a/11 - Custom Video Player/scripts.js b/11 - Custom Video Player/scripts.js deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/11 - Custom Video Player/scripts_donebyme.js b/11 - Custom Video Player/scripts_donebyme.js new file mode 100644 index 0000000000..8f89e62cff --- /dev/null +++ b/11 - Custom Video Player/scripts_donebyme.js @@ -0,0 +1,30 @@ +/*jshint esversion: 6*/ +const player = document.querySelector('.player'); +const video = player.querySelector('.viewer'); +const progress = player.querySelector('.progress'); +const progressBar = player.querySelector('.progress__filled'); +const toggle = player.querySelector('.toggle'); +const skipButtons = player.querySelectorAll('[data-skip]'); +const ranges = player.querySelectorAll('.player__slider'); + + +// functions +function togglePlay(){ + const method = video.paused ? 'play': 'pause'; + video[method](); +} + +function updateButton(){ + const icon = this.paused ? 'โ–บ' : 'โš โš'; + toggle.textContent = icon; +} + +function skip(){ + video.currentTime += parseFloat(this.dataset.skip); +} +// event hookups +video.addEventListener('click', togglePlay); +video.addEventListener('play', updateButton); +video.addEventListener('pause', updateButton); +toggle.addEventListener('click', togglePlay); +skipButtons.forEach(button => button.addEventListener('click', skip));