Чтобы сделать то, что делает http://www.hidemyass.com/, происходит с помощью только javascript, потому что javascript является клиентской стороной. Этот сайт, вероятно, действует как прокси-сервер ... почти, что означает, что он требует связи на стороне сервера (возможно). (Вероятно, причина, по которой они запрашивают деньги, потому что они обрабатывают трафик), вам, скорее всего, понадобится AJAX, для чего требуется сервер с некоторой способностью обрабатывать и получать доступ к другим серверам без ограничений. Любой бесплатный сервер не будет делать это легко и часто имеет политику на серверах, на которые они отслеживают связь. Поэтому вам, вероятно, придется заплатить кому-то, если вы еще этого не сделали. это cheep, если это только вы, но чем дороже, тем дороже.
Таким образом, вы можете узнать, подходит ли для вас режим песочницы.
<iframe sandbox><iframe>
Для повторного включения функции добавить в песочнице pramiters
- (значения) - - - - - - - - - - - - - - - -распространяется все ограничения
- позволяют -forms - - - - - - - - - - - - - - - Повторно разрешает отправку формы
- allow-pointer-lock - - - - - - - - - Повторно включает API
- allow-popups - - - - - - - - - - - - - Повторное включение всплывающих окон
- allow-same-origin - - - - - - - - - -Включает содержимое iframe, которое должно рассматриваться как одноименное.
- allow-scripts - - - - - - - - - - - - Re -Позволяет скрипты
- позволяют-топ-навигации - - - - - - - - Позволяет содержание IFrame перемещаться его контекста, просматривающие верхнего уровня
источник: w3schools
<iframe sandbox="allow-forms"><iframe>
Если это делает не удовлетворять, играйте с onclick
и onchange
накануне nts, чтобы пользователи не могли взаимодействовать. с интерактивными элементами или перемещением на другие страницы.
<iframe onchange="function(){\
document.getElementsByTagName("iframe"[0].src =\
"http://facebook.com");\
}"></iframe>
или какой-либо onclick предотвратить по умолчанию.
Это не безопасно в первую очередь, так зачем останавливаться на достигнутом.
Доступ к iframe.contentDocument
и найти и удалить все <a
... </a>
теги или те, которые вы хотите. существует какой-то метод удаления детей, который вы можете найти для этого. если вы хотите быть более сообразительным, вы можете сравнить href и посмотреть, принадлежит ли он иностранному сайту.