Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как сделать клик функцию на фрейме?

royalpiano11 S Ученик (22), на голосовании 1 год назад
<iframe src="run.php" onclick="alert('Hi');window.frames[0].location.reload()"></iframe>
не работает
Голосование за лучший ответ
@Synergyst Мыслитель (8916) 1 год назад
Ты таким образом нарушаешь безопасность браузера, потому что фрейм может загружать содержимое из другого домена, и если бы клик функция работала внутри фрейма, то какой нибудь Vasyamamalover2009 мог бы использовать ее для выполнения вредоносного кода на странице, на которой размещен фрейм. Ты можешь использовать JS внутри фрейма, чтобы обработать клик внутри run.php:

  


Кто





Такой метод в целом даже более гибкий, так как это позволяет тебе настроить в т.ч и AJAX на отправку запроса, чтобы не выполнять перезагрузку страницы, или настроить еще что-то, что ее требует.
Dlazder Мудрец (16914) 1 год назад
Не выйдет, помню сам напоролся на это. Безопасность браузера не позволит, есть так называемая политика одного источника, можешь почитать про это на learn js. Нельзя менять и получать доступ к содержимому iframe, к примеру убрать какой нибудь элемент или что то еще. Вроде есть исключения и небольшие оговорки по поводу многоуровневых доменов, но в целом никак не получить элемент. Мне было бы интересно как там дела с погружением события но что то кажется что не будет работать. (Лично я даже не пользовался погружением события) Поправьте меня в комментариях если есть обходные пути кликнуть по элементу, мне будет интересно
Похожие вопросы