Копирование текста в буфер обмена в браузере через JavaScript
Запугали меня тут аналитикой сайта, на котором крутится MyTetra Share, что он может попасть в бан яндекса и гугля. А все потому, что в этом проекте собирается информация обо всем, что встречается в жизни, и я не задумываясь выкладываю прямые ссылки туда, где лежит то, о чем идет речь. Бывает, что в статье очень много ссылок, и я не предавал раньше этому большого значения. Пока не увидел вот это:
Код:
Заспамленность ссылками: 3 из 5 (9.1) Есть несколько механизмов сокрытия ссылок. Но все они обладают одной и той же проблемой: после сокрытия, правый клик по преобразованной ссылке не позволит скопировать URL ссылки в буфер обмена. Вариант 1 Вначале я сделал финт ушами: в тексте страницы ссылки представляю как Код:
<span class=«hyperurl» url="...«>Текст</span> Вариант 2 Тогда я решил воспользоваться небезызвестным ZeroClipboard (http://zeroclipboard.org). Решил сделать так: рядом с обработанной ссылкой ставить значек копирования (примерно как в википедии у внешней ссылки). При клике по ссылке - переходим по ссылке через механизм скрытия ссылок. При клике по значку копирования - копировать ссылку в буфер обмена. Немного непривычно, но хоть какая-то забота о пользователе. Но у ZeroClipboard есть одна трабла: так как он реализуется через Flash, то в Firefox при наведении на иконку копирования появляется надпись „Блокировать...“. Она настолько ужасна, что оставлять в таком виде нельзя. (Сейчас сделано именно так (значек есть, кликать по нему, ссылки пока обычные). Пример http://webhamster.ru/mytetrashare/in...3267sw0y5sfn2e) Теперь вопрос. Как же по-православному, кроссбраузерно, скопировать текст в буфер обмена через JavaScript? |
Цитата:
|
Цитата:
Например, если делать песочницу на сервере, то делать будут на базе готовых технологий, возможно, через node.js. Вот как бы в JavaScript определить среду выполнения (помимо User Agent), чтобы для песочницы не выполнять преобразование <span> в <a>? Понятно, что это все вилами по воде писано, но интересно, может быть есть надежный способ. |
Цитата:
|
Это связано не с буфером обмена. Коль стало ясно, что с буфером обмена каши не сваришь, надо искать другие подходы. Сервер отдает ссылки в виде <span>, JavaScript в браузере преобразует их обратно в <a>. И задача в том, чтобы в песочнице поисковика это обратное преобразование в <a> не происходило.
|
Неа?
<a href="spam-site.ru" *!*rel="nofollow"*/!*>Сюда</a> https://support.google.com/webmaster...er/96569?hl=ru |
Цитата:
Сам Гоголь и пишет: Цитата:
У меня же ссылки на надежные сайты. Я понимаю, что всем пофигу на других, поставил nofollow и без разницы, что в копилочке статистики у надежного ресурса снизится рейтинг только потому, что кто-то другой сделал на него ссылку с nofollow. Но я бы так поступать не хотел. Разубедите меня что это не так, и я не буду никому компосировать мозги. |
xintrea,
А на этом сайте тоже возникает надпись ? При копировании в буфер обмена ? Пример(кнопка справо - копировать в буфер, при наведении на посмотреть): А на этом сайте тоже возникает надпись ? При копировании в буфер обмена ? Пример: |
Да, появляется. Это от AdBlock происходит.
|
Часовой пояс GMT +3, время: 15:36. |