Открытие 2х ссылок.

Тема в разделе "Другие языки", создана пользователем Mons, 29 окт 2008.

Статус темы:
Закрыта.
Модераторы: Цукер
  1. Mons

    Mons

    Регистр.:
    2 апр 2006
    Сообщения:
    1.589
    Симпатии:
    916
    Подскажите как реализовать такую фичу.
    По клику по 1й ссылке происходило открытие 2х ссылок.
    Видел решение для DLE но оно для меня пока горомоздко.
     
  2. megadude

    megadude

    Регистр.:
    6 сен 2006
    Сообщения:
    184
    Симпатии:
    66
    HTML:
    <a href="#" onclick="openURLs();">Search Engines</a>
    
    <script type="text/javascript">
      function openURLs() {
        url_1 = "http://www.google.com";
        url_2 = "http://www.yahoo.com";
    
        window.open(url_1, "Google");
        window.open(url_2, "Yahoo");
    
      }
    </script>
     
    Шуруповерт и Mons нравится это.
  3. Mons

    Mons

    Регистр.:
    2 апр 2006
    Сообщения:
    1.589
    Симпатии:
    916
    О, а теперь представим что ссылок на странице много.
    И надо чтобы каждая открывался с дублером....
    старница просто умрет от кол-ва кода в ней.

    Есть ли решения на php ?
     
  4. RolCom

    RolCom

    Регистр.:
    12 мар 2008
    Сообщения:
    351
    Симпатии:
    108
    Чтобы автоматом добавить onclick="openURLs();" к каждой ссылке:
    PHP:
    preg_replace('{<a\b(?:(?!onclick)[^>])*(?=>.*?</a\s*>)}''$0 onclick="openURLs();"'$html);
     
    Mons нравится это.
  5. Hemi-Sync

    Hemi-Sync Постоялец

    Регистр.:
    17 дек 2006
    Сообщения:
    88
    Симпатии:
    38
    Не знаю как вы, но я еще сидел на дорогом инет-канале и меня просто типает, когда страница перегружена.
    Я пишу на jQuery и решаю подобные задачи так
    Код:
    var alllinks=['http://google.ru', 'http://ya.ru'];
    
    //вот это стартанет сразу после загрузки
    $(document).ready(function(){
    
    //а это уже прилепит ко всем ссылкам onClick
        $('a').click(function(){
            //тут уже открываем нужные ссылки.
            // это можно сдедалть узнав айди ссыки и введя еще массив айди->номера ссылок для открытия
            //или использовать плагин metadata, у которого прямо на ссылке будет указаны номера ссылок для открытия
        })
    })
    
    даже можно не писать урлы в ссылках. Хватит Id или метаданнах. Таким образом мы можем добиться любого пересечения вызова ссылок. и без дублирования кода
     
Статус темы:
Закрыта.