JavaScript/jQuery - открыть текущую ссылку во всплывающем окне

<a href="#" onclick="location.href='http://google.com'; return false;">Link</a>

Как открыть эту ссылку во всплывающем окне? И запретите браузер блокировать его

Ответы

Ответ 1

Там "новые окна" и там "всплывающие окна". Использование target=_blank откроется в новом окне, за исключением того, что современные браузеры по умолчанию добавили новые окна в новые вкладки. Кажется, что это не то, что вы хотите.

Для фактического всплывающего окна вы хотите window.open() и не забудьте указать определенную ширину и высоту, иначе некоторые браузеры по-прежнему будут помещать новое окно в новую вкладку. Пример Дарина выглядит хорошо для меня.

Что касается блокировки всплывающих окон, общий подход, который делают браузеры, заключается в том, что всплывающие окна, инициированные действием пользователя, разрешены (например, щелчок), тогда как всплывающие окна, созданные спонтанно через script, например, это заблокирован:

<script type="text/javascript">
    window.open("http://www.google.com/", "Google", "width=500,height=500");
</script>

Тем не менее, блокирование рекламы является эскалацией войны, вы никогда не можете быть уверены, что всплывающее окно откроется. Если ваше всплывающее окно заблокировано, вызов window.open возвращает значение null. Поэтому я бы модифицировал пример Дарена следующим образом:

<a href="http://www.google.com/"
    onclick="return !window.open(this.href, 'Google', 'width=500,height=500')"
    target="_blank">

Если всплывающее окно заблокировано, onclick возвращает true, который следует по ссылке, которую они нажали, открыв ее в новом окне или вкладке. Это резерв, поэтому, по крайней мере, контент доступен (если не очень).

Ответ 2

<a href="http://google.com" onclick="window.open(this.href, 'windowName', 'width=1000, height=700, left=24, top=24, scrollbars, resizable'); return false;">Link</a>

Ответ 3

Это откроет новое окно.

<a href="http://google.com" target="_blank">Link</a>

Ответ 4

JQuery

<script>
$('#button2').live("click",function(e){    
  window.open("http://www.google.com", "yyyyy", "width=480,height=360,resizable=no,toolbar=no,menubar=no,location=no,status=no");
return false;
});
</script>

<a href="#" id="button2" ><img src="images/online.png"></a><br/>Online

Ответ 5

Вы можете попробовать код ниже,

<script type="text/javascript">
     window.open(location.href, "Google", "width=500,height=500");
</script>