Розуміння атрибута javascript:
в Href та його ризиків
Псевдопротокол javascript:
— це механізм у веб-розробці, який дозволяє виконувати JavaScript-код безпосередньо з атрибута href
. Ця поведінка має цікаві нюанси, зокрема стосовно проблем безпеки. Давайте розглянемо, як це працює та чому це може становити ризик, якщо не враховувати важливі моменти.
Як працює javascript:
в Href?
Коли ви встановлюєте javascript:
як значення атрибута href
, браузер оцінює ідентифікатор у тому ж вікні, що й сама сторінка. Ось що відбувається:
- Браузер шукає `
у об'єкті
window`. - Якщо
знайдено в об'єкті `window`, браузер встановлює `body.innerHTML` на значення
. - Якщо
не знайдено, браузер трактує це