Можно ли запустить javascript только с изображением - PullRequest
0 голосов
/ 04 декабря 2018

Например,

У меня есть изображение: www.domain.com/image.jpg

Если кто-то, где перейти к этому изображению, могу ли я запустить JavaScript на этом изображении.Расширение файла примерно до .html.Расширение файла должно быть .jpg (т. Е. www.domain.com/image.jpg).

Пример процесса:

  1. Боб переходит к www.domain.com/image.jpg
  2. Javascriptгде из alert("Hello! Thanks for looking at my image"); выполняется.
  3. Боб видит всплывающее окно, которое говорит Hello! Thanks for looking at my image

1 Ответ

0 голосов
/ 04 декабря 2018

Может ли ссылка с частью пути, заканчивающейся на ".jpg", запустить JavaScript в браузере?- Да и нет ... в зависимости от того, ожидает ли браузер страницу (прямая навигация или нажатие на ссылку) или визуализации изображения (тег img, фоновое изображение, ...).

Если современный браузер ожидаетimage (т. е. <img src="cats.jpg"> или любое другое место, где требуется изображение, как в фонах CSS), оно будет отклонять любые ответы, которые не возвращаются как тип контента"image / ..." (или аналогичный) ибудет пытаться интерпретировать ответ как изображение, если тип контента выглядит как изображение.В нет в большинстве случаев браузер не будет отображать такой ответ как HTML с включенным JavaScript (согласно Kaiido комментарий Ответы SVG могут содержать JavaScript).

Если браузер просто переходит на страницу, он не ожидает какого-либо конкретного типа ответа.Сервер сообщает, что ответ, предоставляя заголовок типа контента.Если браузер не имеет заголовка, можно попытаться угадать тип ответа, посмотрев на первые байты.В любом случае, если ответ приходит в виде HTML, браузер просто отобразит его как страницу, независимо от того, как выглядит URL.Т.е. http://www.example.com/cats.jpg может также возвращать CSS или HTML в зависимости от того, как настроен сервер.

...