Как открыть все внешние ссылки в новом окне (javascript) (страница комментариев 4)

15 октября 2012. Рубрики: Рабочие заметки; автор — Юлия Панина aka Княгиня.

Открыть иль не открыть — вот в чём вопрос…

Вы ведёте блог? Ставите ссылки на другие сайты? Если «да» и «да», то в каком окне/вкладке вы их открываете — в том же или в новом? 99,(9)% вебмастеров открывают внешние ссылки в новом окне (а некоторые открывают в новом даже ссылки на самого себя — что, с моей точки зрения, явный перебор). Ничтожно малое исключение составляют особо принципиальные.

[expand]

Отступление об особо принципиальных. Читать полностью »

83 комментария на «Как открыть все внешние ссылки в новом окне (javascript)»
  1. красный digital-маркетинг (1 комментарий)

    Спасибо. Пока блог не большой и ссылок мало — использую _blаnk. Но скоро, видимо, воспользуюсь вашим скриптом.

    Ответить на этот комментарий
  2. tachairs (2 комментария)

    Слушай, а зачем так делать? Я мышкой в новом окне открываю ссылки — правой клик — и в новом окне.
    Или это несет какую-то нагрузку на сам сайт или вообще что?)
    Я чайник-и-кофейник, я скрипты не пишу — поясни плиз)))

    Ответить на этот комментарий
    • Княгиня (660 комментариев)

      А это как раз для того, чтобы пользователю не приходилось делать два движения. Если открывать правой кнопкой, то надо сперва кликнуть, а потом ещё раз кликнуть. И не все пользователи, как ни странно, об этом знают. Поэтому вебмастера, как правило, назначают внешним ссылкам новое окно — через target="_blank" или скриптом. В первом случае атрибут target нужен каждой ссылке свой, забудешь — не будет нового окна, поэтому я выбрала скриптовый вариант — один на все ссылки, сколько их есть на сайте.

      Ответить на этот комментарий
  3. Тимур (5 комментариев)

    Интересное решение, хотя лично мне не лень поставить галочку «Открывать в новом окне» при создании ссыли в WP. Есть, правда, одно но: редактор на моем блоге никогда этого не делает и мне приходится постоянно за ним исправлять это упущение. Так что, наверное, воспользуюсь вашим скриптом. Спасибо.
    Кстати, насчет этого:
    …я завела привычку открывать все такие ссылки правой кнопкой мыши: слишком утомительно надеяться на предусмотрительность вебмастера…
    Можно же просто нажать на колесико мышки — ссылка откроется в новой вкладке. Я тоже не надеюсь на предусмотрительность вебмастеров, поэтому постоянно открываю ссылки нажатием колеса.

    Ответить на этот комментарий
    • Дмитрий (9 комментариев)

      Тимур, сферический юзер в вакууме откроет ссылку двойным кликом :-D

      Ответить на этот комментарий
      • Тимур (5 комментариев)

        :-D Согласен))) На работе постоянно сталкиваюсь с тем, что начальник, да и некоторые коллеги 50+ кликают 2 раза, причем довольно яростно. Мне иногда мышу аж жалко)))

        Ответить на этот комментарий
    • Княгиня (660 комментариев)

      Я пробовала колёсиком — у меня вместо ссылки система преобразует рабочий стол, превращая все открытые окна в эскизы. Так что у меня колёсико не пошло. Да, и ссылки ведь бывают не только в панелях, где можно поставить галочку, а и в тексте. Я сначала пыталась для упрощения жизни изобрести шорткод, а потом поняла, что это извращенческое излишество. :) Скрипт проще и быстрей.

      Да, кстати: у меня до сего нового года мышь была без колёсика, зато с шариком. :) И ничего, если бы мне не подарили беспроводную, я бы так шарик до сих и юзала.

      Ответить на этот комментарий
  4. Удивительный (9 комментариев)

    Для большинства движков есть стандартные плагины, реализующие данную функцию. Но знать как это работает интересно, спасибо!

    Ответить на этот комментарий
    • Княгиня (660 комментариев)

      Не знаю такого плагина для Wordpress. Да и зачем плагин, если скрипт делает то же самое без нагрузки на сервер?

      Ответить на этот комментарий
  5. Bomgpe (2 комментария)

    А как реализовать, чтобы открывалось сразу два окна? Т.е. по одному клику — два внешних сайта. А внутренние переходы так и оставались, как ранее.

    Ответить на этот комментарий
    • Княгиня (660 комментариев)

      Это как — два сайта? А главное — зачем? В принципе, можно написать функцию и передать в неё два урла. Но смысла не вижу.

      Ответить на этот комментарий
  6. Владимир (1 комментарий)

    в принципе можно так — событие вешать, но можно скриптом и выставить target=»_blank», т.е.

    $(‘a[href^=»http»], a[href^=»ftp»]’).not(‘a[href^=»http://yoursite.ru/»]’).click(function(){
    $(this).attr(«target», «_blank»);
    });

    это к примеру к тому чтобы не было нескольких событий onclick у ссылок (да и так по-моему проще)

    Ответить на этот комментарий
    • Княгиня (660 комментариев)

      Этот вариант предлагали на одной из предыдущих страниц. :)

      Ответить на этот комментарий
  7. Алексей (1 комментарий)

    Этот скрипт на мой взгляд очень полезный,только вот воспользоваться не могу по причине отсутствия у меня должных знаний и опыта.Подскажите пожалуйста,вы пишите: «Создаём собственный файл *.js или добавляем в уже имеющийся вот такой код:» я так понял под звездочкой я должен написать любое имя файла!?у меня сайт на Wordpress и там существует папка js в которой большое количество файлов с расширением js .Куда необходимо вписать ваш скрипт?Помогите «ребенку»

    Ответить на этот комментарий
    • Княгиня (660 комментариев)

      Можно создать свой собственный скрипт и положить его в ту же папку. Назвать опознаваемым именем и не забыть правильно прописать подключение в head. А в какой из существующих писать — заочно сказать не могу. Теоретически — в любой. На практике иногда бывают файлы, которые лучше не трогать.

      Ответить на этот комментарий

Есть что сказать? Не молчим!

Используйте теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" code=""> <ul> <li> <ol> .

Комментарии короче 200 символов публикуются без активной ссылки. Пробелы не учитываются.

Ссылки с комментариев dofollow. Ознакомьтесь, пожалуйста, с правилами dofollow-комментирования. Кто не читает, тот сам себе враг.