Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как открыть все сгенерированные ссылки с общим id в списке одним кликом? (https://javascript.ru/forum/misc/57122-kak-otkryt-vse-sgenerirovannye-ssylki-s-obshhim-id-v-spiske-odnim-klikom.html)

malefikus13 21.07.2015 09:14

Как открыть все сгенерированные ссылки с общим id в списке одним кликом?
 
Народ, помогите разобраться пожалуйста. Весь изначальный код приводить не буду, так как в этом нет необходимости.

Приведу основной момент. В части html имеется список. В нем, через php генерятся ссылки. Нужно сделать так, чтоб по нажатию одной кнопки, раскрывались все ссылки в данном списке, имеющие один общий id.



Код JS

function OpenAllLinks() { 

	var href = document.getElementById('takeLink').getAttribute('href');

    var http = "href"; 
    var win1 = window.open(http); 
    
    }


Код html

<ul class="poisk_zapros">

   <li class="linktable"><a id="takeLink" href="ссылка1" target="_blank">Найти в поисковике</a> </li>

   <li class="linktable"><a id="takeLink" href="ссылка2" target="_blank">Найти в поисковике</a> </li>

</ul>


<a rel="nofollow" href="javascript:OpenAllLinks()">Открыть все ссылки</a>

</tr>


Код кнопки

<a rel="nofollow" href="javascript:OpenAllLinks()">Открыть все ссылки</a>


Заранее спасибо!

tsigel 21.07.2015 09:30

malefikus13,
id должен быть уникальным, на то он и id.

malefikus13 21.07.2015 09:35

Цитата:

Сообщение от tsigel (Сообщение 380580)
malefikus13,
id должен быть уникальным, на то он и id.

Так это я понимаю)) Он уникальный. Мне не совсем понятно, как это реализовать в js. Я что-то не правильно указал в js. Срабатывать он срабатывает, вот только в ссылке не подхватывает значение "href"

tsigel 21.07.2015 09:56

<button>Открыть ссылки</button>
<a href="http://javascript.ru/">javascript.ru</a>
<script>

document.querySelector('button').addEventListener('click', function () {
   Array.prototype.forEach.call(document.querySelectorAll('a'), function (link) {
      window.open(link.href);
   });
   return false;
}, false);

</script>

ksa 21.07.2015 10:05

Цитата:

Сообщение от malefikus13
Он уникальный.

Уникальный не может повторяться... ;)

malefikus13 21.07.2015 10:47

Спасибо огромное!))

kostyanet 21.07.2015 11:36

Хоть бы не попасть на такой поп-сайт...

malefikus13 21.07.2015 15:41

Цитата:

Сообщение от kostyanet (Сообщение 380607)
Хоть бы не попасть на такой поп-сайт...

:) Это да - согласен. Но мне это не для корыстных целей, а рабочая задача, для удобства персонала. Так что одну задачу можно использовать по разному :)

nerv_ 21.07.2015 15:44

Цитата:

Сообщение от kostyanet
Хоть бы не попасть на такой поп-сайт...

просто браузер заблокирует создание окон)
window.open();
window.open();
window.open();
window.open();
window.open();

malefikus13 21.07.2015 17:24

Эммм, а не подскажите еще вот что, данное решение почему - то не срабатывает корректно на хроме. Открывается только одна ссылка. В мазиле же все работает правильно - все ссылки раскрываются.:(

tsigel 21.07.2015 17:30

malefikus13,
открывайте их через таймаут, браузер блокирует синхронное открытие кучи окон.

EmperioAf 21.07.2015 19:29

Цитата:

Сообщение от tsigel
открывайте их через таймаут, браузер блокирует синхронное открытие кучи окон.

а если написать setTimeout('someFunc', 1), то браузер поймёт это как синхронное открытие кучи окон ?

malefikus13 22.07.2015 08:52

спасибо, сейчас попробую. :)


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