спрятать ссылку средствами javascript

250
09 декабря 2017, 09:56

Требуется спрятать ссылку от поисковых систем, с помощью javascript. С целью более разумного распределения веса на странице

В сети, много примеров как это сделать с помощью jQuery, но требуется на чистом JS, потому как jQuery не дружит с используемым движком.

Answer 1

Достаточно указать в ссылке аттрибут rel="nofollow", уже давно все основные поисковики его обрабатывают.

Так же в поисковиках можно через SiteMap вручную настраивать вес страниц внутри сайта.

Вес указывается в эллементе <priority>0.7</priority>

Смотрите https://www.sitemaps.org/ru/protocol.html

Answer 2

Как вариант, активируйте ссылку событием onclick=, которому назначьте функцию, а в функции соберите ссылку из разных строк, прописанных в переменных, посредством конкатанации, и используйте этот "пазл" в качестве адреса в window.open(). Так ссылку никакой поисковик не найдёт. ))

Answer 3

Можешь закинуть на нужные тэги, span, например, атрибут data-url (или любой другой) и какой-нибудь класс, например, my-link

<span class="my-link" data-url="http://google.com/">Ссылка</span>

И обработать переход через JS:

document.getElementsByClassName('my-link').forEach(function(link) {
  link.onclick = function() {
    window.open(link.dataset.url); // Если хочешь открыть новую вкладку
    location.href = link.dataset.url; // Если хочешь перейти по ссылке в этой вкладке
  };
});
Answer 4

если поместить URL в скрипт то она будит спрятана от поисковых систем

<a href='javascript: document.location.href = "http://www.yandex.ru";'>
ссылка спрятана от поисковых систем</a>

можно вынести за пределы тега

<script type="text/javascript">  
function fu_href(){
//  перейти по ссылке в текущем окне
//  document.location.href = "http://www.yandex.ru"
//   Открыть  урл  в новом окне
window.open("http://yandex.ru");
}
/*
    Можно попробовать вариант добавления ссылки в тело HTML документа по
 средствам стандартных методов  библиотеки яваскрипта в  браузера 
*/
// небольшой ХАРДКОР
var arr = ["h","t","t","p:","//"]
var arr_1 = ["W","W","W"]
var arr_2 = ["."]
var yandex_arr = ["Y","A","N","D","E","X"]
var arr_4 = ["r","u"]
var teg_A = document.createElement("A")
    teg_A.setAttribute("href", "#")
    teg_A.appendChild(document.createTextNode("ссылка добавленная
 яваскриптом спрятана от поисковых систем"))    
    teg_A.onclick = function(){window.open(arr.concat(arr_1,arr_2,yandex_arr,arr_2,arr_4)
.join("").toLowerCase()); return false}
//добавляем тег А с набором параметров, в  тега BODY, последним узлом
    document.getElementsByTagName('BODY')[0].appendChild(teg_A) 
</script>
<a href="#" onclick="fu_href(); return false">ссылка спрятана от
 поисковых систем</a>
</br>
READ ALSO
VueJS watch отрабатывает дважды

VueJS watch отрабатывает дважды

К примеру есть несколько свойств и вотчер который отслеживает изменение в одном из них, вроде этого

194
Формирование модального окна

Формирование модального окна

Здравствуйте, есть вызов модального окна в attachmenttpl cms DLE Как сделать чтобы при вызове фон размывался и затемнялся?

243
Vue 2 + Babel + Browserify + Gulp

Vue 2 + Babel + Browserify + Gulp

Пробовал много разных вариантов собрать проект Vue с помощью Gulp в связке с Browserify и Babel

309
Не открывается модальное окно из react-bootstrap

Не открывается модальное окно из react-bootstrap

В консоли видно что при нажатии на кнопку props обновляются, например:

269