Как скрыть ошибки JavaScript, добавленные в iFrames? - PullRequest
0 голосов
/ 26 июня 2009

У меня есть iFrame, который показывает внешние веб-страницы через один из моих прокси-серверов, которые я контролирую. Но этот прокси не обрабатывает JavaScript в большинстве случаев должным образом, внешние страницы выдают ошибки JavaScript. Javascript не должен работать, так как это не важно.

Что я могу сделать, чтобы скрыть эти ошибки JavaScript? Они раздражают, и у меня может быть несколько таких фреймов, указывающих на разные внешние источники.

Ответы [ 2 ]

1 голос
/ 27 июня 2009

Может ли ваш прокси переписать HTML? Если вам даже не важно, допустим ли HTML, вы можете заменить <script на <!--script, /script> на /script-->. и лишить законной силы любые атрибуты обработчика событий, например заменить on[a-z]+= на *onnull=.

Единственный JavaScript, который может быть запущен, находится в выражениях CSS в Internet Explorer.

0 голосов
/ 17 июля 2009

Полагаю, просто используйте прокси для анализа и замены всех тегов и событий скрипта. Поскольку все эти теги имеют регулярный шаблон, вы можете просто использовать регулярные выражения, чтобы исключить все теги сценария и все события JavaScript, если это не важно.

Regex для удаления скрипта:

<script.*?</script>

Удалит все символы между тегами скрипта, но вы также должны удалить адреса on x и javascript :. Подробнее об этом позже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...