Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   открыть ссылку в новом окне(не путать с вкладкой) (https://javascript.ru/forum/dom-window/35673-otkryt-ssylku-v-novom-okne-ne-putat-s-vkladkojj.html)

nurik2120 18.02.2013 13:01

открыть ссылку в новом окне(не путать с вкладкой)
 
есть ссылка к ней приписываю rel="external" хочу что бы открывалось новое окно нашел два разных скрипта пытаюсь их обьеденить не чего не выходит подскажите как будет правильно реализовать

первый скрипт
onClick = "popupWin = window.open(this.href, 'contacts', 'location,width=490,height=368,top=0'); popupWin.focus(); return false";

второй скрипт

function externalLinks() {
links = document.getElementsByTagName("a");
for (i=0; i<links.length; i++) {
link = links[i];
if (link.getAttribute("href") && link.getAttribute("rel") == "external")
link.target = "_blank";

}
}
window.onload = externalLinks;


пытаюсь сделать так

function externalLinks() {
links = document.getElementsByTagName("a");
for (i=0; i<links.length; i++) {
link = links[i];
if (link.getAttribute("href") && link.getAttribute("rel") == "external")
link.target = "_blank";
onClick = "popupWin = window.open(this.href, 'contacts', 'location,width=490,height=368,top=0'); popupWin.focus(); return false";
}
}
window.onload = externalLinks;
но не чего не выходит

Deff 18.02.2013 13:55

<a id="Lnk" href="http://javascript.ru/window-open" >Клик</a>
<script>
var link = document.getElementById('Lnk')
link.setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=490,height=368,top=0'); popupWin.focus(); return false")
</script>

ksa 18.02.2013 13:59

А если так?

<a id="Lnk" href="http://javascript.ru/window-open" target='_blank'>Клик</a>

рони 18.02.2013 15:02

:-? а разве открывать в вкладке или новом окне независит от настроек браузера?

nurik2120 18.02.2013 15:11

Цитата:

Сообщение от ksa (Сообщение 235275)
А если так?

<a id="Lnk" href="http://javascript.ru/window-open" target='_blank'>Клик</a>

нет так не подходит, подошел первый вариант спасибо всем за помошь и тем кто откликнулся низкий поклон))

nurik2120 18.02.2013 15:19

Цитата:

Сообщение от Deff (Сообщение 235272)
<a id="Lnk" href="http://javascript.ru/window-open" >Клик</a>
<script>
var link = document.getElementById('Lnk')
link.setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=490,height=368,top=0'); popupWin.focus(); return false")
</script>

есть вариант создать только <a class="Lnk" href="http://javascript.ru/window-open" >Клик</a>
индификатор нельзя прописать можно только или атрибут rel или class

Deff 18.02.2013 16:26

Добавки к Вашему коду

function setOnclick(a) {
a.setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=4 90,height=368,top=0'); popupWin.focus(); return false")
}

...
link = links[i];
if (link.getAttribute("href") && link.getAttribute("rel") == "external")
link.target = "_blank";
setOnclick(link)
}

nurik2120 18.02.2013 18:41

Цитата:

Сообщение от Deff (Сообщение 235315)
Добавки к Вашему коду

function setOnclick(a) {
a.setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=4 90,height=368,top=0'); popupWin.focus(); return false")
}

...
link = links[i];
if (link.getAttribute("href") && link.getAttribute("rel") == "external")
link.target = "_blank";
setOnclick(link)
}

спасибо все работает

Deff 18.02.2013 20:17

<!DOCTYPE HTML>
<html>
  <head> </head>
  <body>

<script>

function setOnclick(a) {
a.setAttribute("onclick","popupWin = window.open(this.href,'contacts','location,width=1300px,top=0,left=100px'); popupWin.focus(); return false")
}

function externalLinks() {
var links = document.getElementsByTagName("a");
  for (i=0; i<links.length; i++) {
    if (links[i].getAttribute("href") && links[i].getAttribute("rel") == "external") {
      setOnclick(links[i])
    }
  }
}
window.onload = externalLinks;

</script>
    <a href="http://javascript.ru">клик (текущая)</a><br /><br />
    <a rel="external" href="http://javascript.ru">Клик 2(в новом Окне)</a>
  </body>
</html>
/a


Часовой пояс GMT +3, время: 20:55.