Верх страницы
Обложка к записи jQuery сниппеты: показать адрес ссылки при выводе на печать
Время для прочтения: 0 мин. 3 сек.

jQuery сниппеты: показать адрес ссылки при выводе на печать

Я нашел замечательный трюк в статье Реми Шарпа, позволяющий вставлять в тексте после гиперссылки адрес самой ссылки при выводе страницы на печать.

К сожалению, данная фишка работает только в браузерах, поддерживающих CSS2 псевдоселектор :after: Firefox, Safari, Opera, Chrome (с ограничениями), IE8. Пользователи же IE6, IE7 не увидят должного эффекта, поэтому предлагаю для них использовать jQuery-сниппет.

$(function() {
    // Знает ли браузер о onbeforeprint (IE6, IE7 иIE8)
    if (window.onbeforeprint !== undefined) {
        // Вешаем обработчик перед печатью (добавление ссылок)
        window.onbeforeprint = ShowLinks;
        // Удаляем обработчик после печати
        window.onafterprint = HideLinks;
    }
    else {
        // Если браузер не IE6, используем псевдоселектор :after
        $('head').append('<style type="text/css" media="print">.print_link:after { content: " (" attr(href) ")"; }</style>');
    }
});
function ShowLinks() {
    $('.print_link').each(function() {
        // Запоминаем оригинальный тест ссылок
        $(this).data('linkText', $(this).text());
        // Добавляем к гиперссылке ее ссылку
        $(this).append(' (' + $(this).attr('href') + ')');
    });
}
function HideLinks() {
    $('.print_link').each(function() {
        // Восстанавливаем оригинальную гиперссылку
        $(this).text($(this).data('linkText'));
    });
}

Ссылки

Автор: Кобзарёв Михаил

Русский разработчик с 20-ти летним стажем. Работаю с PHP, ООП, JavaScript, Git, WordPress, Битрикс, Joomla, Drupal, Opencart, DLE, Laravel, Moonshine, SuiteCRM.

Оптимизирую сайты под Google Page Speed, настраиваю импорты для больших магазинов на WooCommerce + WP All Import. Пишу плагины на заказ. Все мои услуги.

Веду блог о разработке, дайджест в телеграмме и в ВК.

Вы всегда можете нанять меня.

Комментарии
Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Предыдущая запись

Давайте дружить
в Телеграме

Авторский блог вашего покорного слуги в Telegram про web, программирование, алгоритмы, инструменты разработчика, WordPress, Joomla, Opencart, Laravel, Moonshine, фильмы и сериалы