2010-05-28 3 views
-2

У меня есть вопрос. Есть ли способ переопределить hrefs, сообщения и т. Д.? В примере я вставляю форум третьей части внутри моего контейнера, и я нажимаю что-нибудь там, где ответ на страницу будет загружен в тот же контейнер и не перезагружает все в окне.Внедрение другой системы и ее замена

+0

Вы имеете в виду, как веб-сайт фишинг? –

+1

@codeka: Это не должно быть гнусным. Есть всевозможные действительные надземные причины, которые он может захотеть сделать. Это классическая дилемма технологии: технология нейтральна, ее можно использовать для Добра и для Зла. –

+0

такой же, как @codeja сказал – number5

ответ

2

Да, есть два способа сделать это:

  1. Использование в iframe. iframe s - независимые окна, встроенные в окно, и поэтому навигация в пределах iframe остается в пределах iframe. Так загрузите там сторонний форум. Это будет самый простой и наиболее совместимый способ.

  2. (Это сложнее.) После загрузки страницы вы можете подключить событие click к ссылкам и submit событие в формах с клиентским Javascript. Когда пользователь нажимает на ссылку, отмените событие клика и используйте Ajax для загрузки HTML-кода для ссылки, а затем вставьте его на свою страницу в соответствующем месте. Аналогично, когда пользователь нажимает кнопку отправки формы, используйте это событие для сбора информации о форме и отправьте POST через Ajax вместо этого (отменив событие отправки), а затем обработайте ответ. Обратите внимание, что в обоих случаях (клики по ссылкам и формам отправки) кнопки навигации браузера не будут делать то, что ожидает пользователь, если вы также не интегрируете библиотеку управления историей на свой сайт, что еще больше усложняет работу.

0

с iQuery вы можете иметь что-то вроде этого

$('a').click(function(e) 
{ 
    e.preventDefault(); 
    window.open(this.href); 

} 
+0

Он не спрашивал, как превращать ссылки в всплывающие окна/новые окна! –

Смежные вопросы