diff --git a/3-more/2-ajax/3-ajax-xmlhttprequest/article.md b/3-more/2-ajax/3-ajax-xmlhttprequest/article.md
index c6ba68a0..d2b62a06 100644
--- a/3-more/2-ajax/3-ajax-xmlhttprequest/article.md
+++ b/3-more/2-ajax/3-ajax-xmlhttprequest/article.md
@@ -326,7 +326,7 @@ xhr.ontimeout = function() {
Кросс-браузерно:
```js
-var XHR = window.XDomainRequest || XMLHttpRequest;
+var XHR = ("onload" in new XMLHttpRequest()) ? XMLHttpRequest : XDomainRequest;
var xhr = new XHR();
```
diff --git a/3-more/2-ajax/5-xhr-crossdomain/article.md b/3-more/2-ajax/5-xhr-crossdomain/article.md
index ddfe8512..ea5aee12 100644
--- a/3-more/2-ajax/5-xhr-crossdomain/article.md
+++ b/3-more/2-ajax/5-xhr-crossdomain/article.md
@@ -16,16 +16,13 @@
```js
// (1)
-var xhr = new XMLHttpRequest();
-if (!xhr.onload) { // это IE 8/9, в них старый XMLHttpRequest
- if (!window.XDomainRequest) throw new Error("Not supported");
- xhr = new XDomainRequest(); // ..но есть XDomainRequest
-}
+var XHR = ("onload" in new XMLHttpRequest()) ? XMLHttpRequest : XDomainRequest;
+
+var xhr = new XHR();
// (2) запрос на другой домен :)
-xhr.open('GET', 'http://anywhere.com/vote.php', true);
+xhr.open('GET', 'http://anywhere.com/path', true);
-// (3)
xhr.onload = function() {
alert(this.responseText);
}
@@ -34,23 +31,18 @@ xhr.onerror = function() {
alert('Ошибка ' + this.status);
}
-xhr.send('');
+xhr.send();
```
-Комментарии:
-
Мы создаём `XMLHttpRequest` и проверяем, поддерживает ли он событие `onload`. Если нет, то это старый `XMLHttpRequest`. Возможно, у нас IE8-9, значит надо попробовать `XDomainRequest`.
-
Запрос на другой домен отсылается просто указанием соответствующего URL в `open`. Он должен быть асинхронным.
-
Все браузеры, которые поддерживают кросс-доменные запросы, поддерживают и события `onload/onerror`, которые можно использовать вместо `onreadystatechange`.
+
Мы создаём `XMLHttpRequest` и проверяем, поддерживает ли он событие `onload`. Если нет, то это старый `XMLHttpRequest`, значит это IE8,9, и используем `XDomainRequest`.
+
Запрос на другой домен отсылается просто указанием соответствующего URL в `open`. Он обязательно должен быть асинхронным, в остальном -- никаких особенностей.
+## Контроль безопасности
-### Контроль безопасности
-
-Контроль безопасности осуществляется на уровне браузера.
-
-**В кросс-доменный запрос браузер автоматически добавляет заголовок `Origin`, содержащий домен, с которого осуществлён запрос.**
+В кросс-доменный запрос браузер автоматически добавляет заголовок `Origin`, содержащий домен, с которого осуществлён запрос.
В данном случае заголовки будут примерно такие:
@@ -70,7 +62,7 @@ Origin:http://javascript.ru
Сервер должен, со своей стороны, ответить специальными заголовками, разрешает ли он такой запрос к себе.
-**Если сервер разрешает кросс-доменный запрос с этого домена -- он должен добавить к ответу заголовок `Access-Control-Allow-Origin`, содержащий домен запроса или звёздочку `*`.**
+**Если сервер разрешает кросс-доменный запрос с этого домена -- он должен добавить к ответу заголовок `Access-Control-Allow-Origin`, содержащий домен запроса (в данном случае "javascript.ru") или звёздочку `*`.**
Только при наличии такого заголовка в ответе -- браузер сочтёт запрос успешным, а иначе JavaScript получит ошибку.
diff --git a/3-more/2-animation/1-js-animation/article.md b/3-more/2-animation/1-js-animation/article.md
index a5858325..9df716e8 100644
--- a/3-more/2-animation/1-js-animation/article.md
+++ b/3-more/2-animation/1-js-animation/article.md
@@ -364,7 +364,7 @@ function elastic(progress, x) {
```
**График для `x=1.5`:**
-
+
Пример для `x=1.5`:
diff --git a/3-more/2-animation/1-js-animation/elastic.png b/3-more/2-animation/1-js-animation/elastic.png
deleted file mode 100755
index d889e888..00000000
Binary files a/3-more/2-animation/1-js-animation/elastic.png and /dev/null differ
diff --git a/3-more/2-animation/1-js-animation/elastic.svg b/3-more/2-animation/1-js-animation/elastic.svg
new file mode 100644
index 00000000..0cf307cb
--- /dev/null
+++ b/3-more/2-animation/1-js-animation/elastic.svg
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/figures.sketch b/figures.sketch
index aea93697..cc922335 100644
Binary files a/figures.sketch and b/figures.sketch differ