Войти
ФлеймФорумСофт

Границы применимости JavaScript (2 стр)

Страницы: 1 2 3 48 Следующая »
#15
18:57, 6 июня 2017

gudleifr

Яваскрипт в браузере заперт в определенной среде выполнения, которая содержит в себе DOM-модель документа. Это все теги как объекты. Действительно имеется возможность обратится к свойству тега inner/outerHTML на запись и таким образом перепахать документ вообще в корне. Тем не менее чего нет в объектах - того нет. В HTML 5 существенно расширены и набор доступных объектов и их фичи.
Очень важным служебным объектом является старый добрый XMLHTTP с помощью которого можно отправлять HTTP-запросы на любые веб-сервера, но... при этом доступ к тому что они возвращают возможен только если запрос идёт на веб-сервер из которого был загружен выполняемый JavaScript. На "чужой" сервер яваскрипт даже может отправить HTTP-запрос, но не может получить доступа к его результатам. Таким образом ява-скрипты еще как бы заизолированы в доменах в некотором роде. Например, если на одной веб-странице будут 2 IFRAME-а с содержимым из разных веб-серверов, то джаваскрипты внутри этих IFRAME-ов не смогут дотянуться до друг друга без специальных ухищрений. Это сделано с целью предотвращения довольно простых в ином случае атак, на этой изоляции половина безопасности в вебе держится.


#16
19:09, 6 июня 2017

Rikk
> ECMAScript+DOM+объекты браузера=ajax
Спасибо, мы вам перезвоним.

#17
19:10, 6 июня 2017

=A=L=X=
> Действительно имеется возможность обратится к свойству тега inner/outerHTML на
> запись и таким образом перепахать документ вообще в корне.
Спасибо, примерно так и понял. Только не понял, как глубок этот корень. Что знает DOM о подгруженном GIF-е?

#18
19:29, 6 июня 2017

gudleifr
> Что знает DOM о подгуженном GIF-е?

До HTML 5.0 до содержимого рисунков как битмапа нельзя было дотянуться разумным способом.  В HTML 5.0 такое вроде бы уже появилось, но я не изучал его подробно чтобы говорить наверняка. Канвас есть, а как он соотносится с тегами image я не в курсе.

#19
19:42, 6 июня 2017

=A=L=X=
> разумным способом
А не разумным?

#20
19:47, 6 июня 2017

gudleifr
> А не разумным?

Для картинки можно указать источником текст в HTML-коде:

<img alt="Embedded Image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." />
Остальное думаю понятно.

#21
19:57, 6 июня 2017

=A=L=X=
Спасибо.

#22
14:58, 8 июня 2017

gudleifr
> Прикручивание не интересует. Условия ни серверной, ни клиентской части от меня не зависят.
Потому что за тебя уже прикрутили blink к v8 (chrome), webkit к nitro (safari), edgehtml к chakra (edge), gecko к spidermonkey (firefox). так что тебе остается только идти и читать, что и как прикрутили.

> Могу я его загрузить, обработать (разобрать, дорисовать, собрать) и только потом вывести?
Да, можешь.
> загрузить
XMLHttpRequest/fetch
> разобрать, дорисовать, собрать
Либо руками байтики теребить (Uint8Array), либо canvas
> потом вывести
datauri/blob

Gringosol
> С помощью  innerHTML и outerHTML можно делать с картинками и прочими кнопками всё, что угодно.
Глупость какая. С помощью innerHTML и outerHTML можно менять элементы. Все то же самое можно сделать с помощью createElement и appendChild (но неудобно, да и нафига?). Ты все равно работаешь в терминах DOM, который для тебя черный ящик с публичным апи.

kipar
> А JavaScript = ECMAScript+DOM+объекты браузера.
В node.js, видимо, не JavaScript. А пацаны то и не знали.

=A=L=X=
> Таким образом ява-скрипты еще как бы заизолированы в доменах в некотором роде.
Да. Сейчас, к слову, есть CORS (https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), с помощью которого можно разрешить браузеру лазить на свой домен со списка других доменом. Работает м-м-максимум примитивно: вначале посылается OPTIONS запрос на тот же урл, и если его заголовки не разрешают делать запрос, то он не делается.

up: наврал, не HEAD, а OPTIONS

#23
22:19, 8 июня 2017

beejah
> Спасибо, мы вам перезвоним.
пишите письма.


Дэвид Флэнаган Javascript

http://kharchuk.ru/JavaScript.pdf
пруф-ссылка

читать надо

глава1 стр 22

Обратите внимание, что в соответствии со стандартом ECMA262 язык офици
ально называется ECMAScript. Но это несколько неудобное название использу
ется только в случае, если необходимо явно сослаться на стандарт. Чисто техни
чески название «JavaScript» относится только к реализации, выполненной Net
scape и Mozilla Foundation.


стр509 глава20

Термин Ajax обозначает архитектуру вебприложений, которая основана на взаимодействии с протоколом HTTP и объектом (XMLHttpRequest =сущность JavaScript)

Ключевой особенностью любого Ajaxприложения является взаимодействие с вебсервером по протоколу HTTP без необходимости полной перезагрузки страницы.(доступ к отдельным объектам документа)=DOM Document Object Model= объектная модель документа.

html+DOM+JavaScript=ajax

#24
13:48, 9 июня 2017

Rikk

Термин Ajax обозначает архитектуру вебприложений, которая основана на взаимодействии с протоколом HTTP и объектом XMLHttpRequest.

Ну вот.

> (XMLHttpRequest =сущность JavaScript)
> (доступ к отдельным объектам документа)=DOM Document Object Model= объектная модель документа.
> html+DOM+JavaScript=ajax
У тебя документ битый или ты поехавший. Там нет этого.

#25
14:21, 9 июня 2017

объектом XMLHttpRequest.=это JavaScript инструмент.
при том там отмечено что явно незапротоколированый (в стандарте), просто нашли удобный способ использовать который оказался эффективен.(после той статьи товарища Гаррета и именование технологии ajax).

#26
17:00, 9 июня 2017

Rikk
> объектом XMLHttpRequest.=это JavaScript инструмент
Да. Именно поэтому аякс - это асинхронный жаваскрипт.
А не хтмл и жаваскрпит. И не ДОМ и жаваскрипт. И не дом и хтмл. И не html+DOM+JavaScript.
И не что-то еще, что ты там еще выдумаешь просто потому, что тебе эти термины в одной книжке встретились.

#27
17:31, 9 июня 2017

beejah
> это асинхронный жаваскрипт.
==
JavaScript весь полностью асинхронный - такая фраза встретилась в книжке.

#28
17:54, 9 июня 2017

Rikk
> JavaScript весь полностью асинхронный
Ага. А еще он весь полностью распределенный - можно и с разных клиентов на один сервер зайти, и с одного - на разные сервера, и с разных - на разные.

#29
17:55, 9 июня 2017

а потому что сишники тупые (с)

Страницы: 1 2 3 48 Следующая »
ФлеймФорумСофт

Тема в архиве.