2013-11-24 2 views
0

Обычно, если мы нажмем на ссылку в окне iframe, направленная новая страница будет просматриваться в окне iframe. Могу ли я иметь способ отображения новой страницы как таковой, не находясь в окне iframe., чтобы связать страницу внутри iframe и перейти на страницу без iframe

Thanks in Advance, Samuel Mathews.

+0

приемлемо использовать jQuery? – melc

+0

@melc. Я открыт для использования jquery..у вас, пожалуйста, поделитесь мной кодом .. (я не эксперт в jquery) ... спасибо заранее! –

+0

'top.location.href = ...' должен делать то, что вам нужно. – Teemu

ответ

0

Возможно, вы знаете об атрибуте TARGET для ссылок. С его помощью вы можете загрузить связанную страницу не в текущем, а в другом имени (I) FRAME/window.

Есть также некоторые специальные целевые имена, которые могут помочь вам:

  • _parent: Открывает страницу в рамке, содержащей текущую (I) КАДР
  • _top: открывает страницу в текущее окно браузера в качестве верхнего кадра

Есть и другие специальные цели, но в этом случае они не важны. См.: http://www.w3schools.com/tags/att_a_target.asp

+0

спасибо fnek! Мне известно о _target .. но мне нужно это в текущем сеансе .. любые другие предложения, пожалуйста .. –

+0

IMHO, это должно внутренне работать точно так же, как 'window.location.href' и' top.location.href'. Я не пытался это сделать, так что, возможно, вы правы. – fNek

+0

верх. * Работал трюк. еще раз спасибо! :) –

0

С помощью jQuery вы можете легко получить любой элемент из iframe, подключить обратный вызов события, например, при щелчке и действовать соответственно, например. просмотрите страницу anywher, которую вы требуете.

пример,

http://jsfiddle.net/Lmx9X/show/

увидеть код здесь,

http://jsfiddle.net/Lmx9X/

JS

$(document).ready(function(){ 
/*define a callback function to all anchors of iframe*/ 
     $('#subpage').contents().find('a').on('click',function(e){ 
/*prevent the default behaviour of navigating to the href of the anchors*/ 
      e.preventDefault(); 
/*do whatever you require, here for example a dialog is presented and navigates the parent page to the href url*/ 
      if (confirm('Prevented iframe from navigating to page. Do you want outer page to navigate instead??')) { 
       var url = $(this).attr("href"); 
       window.location.href = (url.indexOf("#")==0?window.location.href:"")+$(this).attr("href"); 
      }else{ 
       alert("ok, will not navigate!"); 
      } 
     }); 
    }); 

html

<iframe id="subpage" src="http://jsfiddle.net/s22Jm/1/show"></iframe> 
+0

большое спасибо ... но я перехожу на следующую страницу в javascript ... используя ссылку ниже. document.location.href = 'abcd.com'; Не могли бы вы помочь мне изменить приведенный выше код ... чтобы новая страница - abcd.com рассматривалась как таковая без окна iframe. благодарим заранее! –

+0

спасибо всем, кто помог .. window.top.location.href работал как ожидалось ... еще раз спасибо! ссылка: http://stackoverflow.com/questions/580669/redirect-parent-window-from-an-iframe-action-using-javascript –

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