2010-11-08 2 views
0

Связанные но бездействующий: Javascript to open URL within a new Tab и ряд других ...Есть ли способ заставить окно «onclick» открыть на вкладке?

У меня есть клиент, который настаивает на том, что конкретная ссылка должна открыть в новой вкладке, а не в окне. Это порожден «OnClick» события кнопки отправки формы, вызывается функция JQuery в PHP документ, который выглядит следующим образом:

function newTabLink($element,$url) {   

    ?><script language="JavaScript" type="text/javascript">//<![CDATA[ 
     jQuery(document).ready(function() { 
      jQuery('<?php echo $element; ?>').click(function() { 
       window.open("<?php echo $url; ?>",'_blank'); 
       }); 
      }); 
      //]]></script><?php  
} 

У меня также есть заявление CSS в моей таблице стилей, которая пытается заставить новый окна в закладки, а не новые окна:

* { target-new: tab !important; } 

устанавливаемого сотовые целевых новый свойства, кажется, работает в IE9, заставляя всплывающее окно в табл. FF и Chrome/Safari по умолчанию отображаются в виде вкладок, даже без этого набора свойств. Но как я могу заставить IE8 и 7 открыть эту конкретную ссылку на вкладке?

Любые идеи?

+0

Я хочу попробовать свернутые решения (то есть установить действие формы в новое окно, а затем вернуться к оригинальное окно для дальнейшей логики/обработки формы) ... Не ожидая линейного ответа на мой вопрос, но творческого решения ... – goldenapples

ответ

2

Вы не можете надежно сделать это. Как вы заметили, Firefox и браузеры WebKit могут быть настроены на открытие новых окон, однако пользователь хочет. I надежда на то, что IE9 может быть настроен на переопределение поведения этого «стиля». (Редактировать —, который выглядит как черновик CSS3 - я лично надеюсь, что он умирает в комитете.)

+1

+1 для надежды в одиночку. –

+0

CSS3 включает в себя ряд свойств, которые переопределяют поведение браузеров по умолчанию: «target-new» (вкладка/окно) и «целевое положение» (спереди/сзади). Да, пользовательские настройки имеют приоритет, но я не заинтересован в том, чтобы переопределить их, просто поведение браузера по умолчанию ... – goldenapples

+0

Ну, тогда это лучшее, что нужно сделать; Я никогда не видел API, которые контролируют это поведение. Я знаю, что Safari чрезвычайно туго связан с тем, что он позволит коду страницы влиять на активность настольных компьютеров, и похоже, что он попадает в эту категорию (в отличие от «внутристраничных» вещей). – Pointy

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

  • Нет связанных вопросов^_^