Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.12.2017, 22:18
Интересующийся
Отправить личное сообщение для tester33 Посмотреть профиль Найти все сообщения от tester33
 
Регистрация: 07.12.2017
Сообщений: 13

помогите немного переделать Javascript
помогите немного переделать скрипт
скрипт заменяет на странице такие конструкции
<span class="affiliate" title="1.html">текст</span>

на такие
<span class="affiliate"><a class="affiliate" href="1.html">текст</a></span>


мне не нужно что-бы он обрамлял ссылку тегом <span class="affiliate"> </span>
то есть что-бы результат был такой:
<a class="affiliate" href="1.html">текст</a>

то есть, что-бы осталась ссылка в чистом виде

вот сам скрипт

function goPage(sPage) 
{
window.location.href = sPage;
}


function hasClass(e, c) {
if (typeof e == "string") e = document.getElementById(e);
var classes = e.className;
if (!classes) return false;
if (classes == c) return true;
return e.className.search("\\b" + c + "\\b") != -1;
};


function affiliateLinks(){
var theURL, theAnchorText, theTitle;
var spans = document.getElementsByTagName('span');
for (var i = 0; i<spans.length; i++){
if (hasClass(spans[i], 'affiliate')){


theAnchorText = spans[i].innerHTML;
theTitle = spans[i].title.toLowerCase().replace(/^\s+|\s+$/g,"");
theURL =  theTitle ; 
spans[i].innerHTML = '<a href="' + theURL + '" class="' + spans[i].className + '">' + theAnchorText + '</a>';
spans[i].removeAttribute('title');
		}
	}
}

window.onload = function(){
	affiliateLinks();
}
Ответить с цитированием
  #2 (permalink)  
Старый 08.12.2017, 00:28
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

--
theAnchorText = spans[i].innerHTML;
theTitle = spans[i].title.toLowerCase().replace(/^\s+|\s+$/g,"");
theURL =  theTitle ;
spans[i].innerHTML = '<a href="' + theURL + '" class="' + spans[i].className + '">' + theAnchorText + '</a>';
spans[i].removeAttribute('title');
++
var a = document.createElement('a');
a.href = spans[i].title.toLowerCase().replace(/^\s+|\s+$/g,"");
a.className = spans[i].className;
while(span[i].hasChildNodes()) a.appendChild(span[i].firstChild);
span[i].parentNode.replaceChild(a, span[i]);
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 08.12.2017, 04:45
Интересующийся
Отправить личное сообщение для tester33 Посмотреть профиль Найти все сообщения от tester33
 
Регистрация: 07.12.2017
Сообщений: 13

спасибо, что отклинулись
но, увы, ваш код не сработал
ссылки вообще не появляются

кстати, забыл написать, что вся эта муть нужна для поисковых систем, что-бы спрятать некоторые ссылки, с целью не распределять ссылочный вес на не значимые страницы
Ответить с цитированием
  #4 (permalink)  
Старый 08.12.2017, 06:08
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

tester33,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>

  <script>
window.addEventListener('DOMContentLoaded', function() {
   [].forEach.call( document.querySelectorAll('span.affiliate'), function(el) {
          var a = document.createElement('a');
          a.classList.add('affiliate');
          a.text = el.textContent;
          a.setAttribute('href', el.title);
          el.parentNode.replaceChild(a, el);
   });
    });
  </script>
</head>

<body>
<span class="affiliate" title="1.html">текст1</span>
<span class="affiliate" title="2.html">текст2</span>
<span class="affiliate" title="3.html">текст3</span>
</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 08.12.2017, 13:23
Интересующийся
Отправить личное сообщение для tester33 Посмотреть профиль Найти все сообщения от tester33
 
Регистрация: 07.12.2017
Сообщений: 13

спасибо!
попробую, код рабочий

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

а то сейчас, на сайте, по массовой причине, слишком прокачаны сквозные ссылки в шапке и футтере со всякими не значимыми "о компании", "вход", "подписаться на рассылку" и тд ..
вот только js придется мне во внешний файл пихать, и закрывать от индексации через robots.txt, что-бы гугл его не расшифровывал
Ответить с цитированием
  #6 (permalink)  
Старый 08.12.2017, 13:55
Аватар для void()
Профессор
Отправить личное сообщение для void() Посмотреть профиль Найти все сообщения от void()
 
Регистрация: 11.08.2017
Сообщений: 208

tester33,
это бред ужасный.
Ответить с цитированием
  #7 (permalink)  
Старый 08.12.2017, 14:16
Интересующийся
Отправить личное сообщение для tester33 Посмотреть профиль Найти все сообщения от tester33
 
Регистрация: 07.12.2017
Сообщений: 13

а какие аргументы?
просто потому что вы так думаете ? ))

но, есть и другие мнения тех, кто профессионально занимается SEO
например вот это можно почитать:
http://drmax.su/guru-2017-perelinkovka.html

там есть авторская ссылка для бесплатного скачивания книги
Ответить с цитированием
  #8 (permalink)  
Старый 08.12.2017, 15:36
Аватар для void()
Профессор
Отправить личное сообщение для void() Посмотреть профиль Найти все сообщения от void()
 
Регистрация: 11.08.2017
Сообщений: 208

Когда-то в поисковой выдачи было очень много мусора. Фактически гугл и яндекс превратились в свалку. Но сейчас этого не наблюдается. Я когда что-то ищу в поисковиках, то мне в 100% случаев показывают крутые сайты, нормальные.

Так вот вопрос возникает... есть ли взаимосвязь между тем, чтобы криво закрыть какие-то ссылки в меню и рейтингом сайта в поисковике? Что-то я сомневаюсь . Скорей это будет считаться признаком некачественного сайта.
Ответить с цитированием
  #9 (permalink)  
Старый 08.12.2017, 15:55
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,726

Сообщение от tester33
вот только js придется мне во внешний файл пихать, и закрывать от индексации через robots.txt, что-бы гугл его не расшифровывал
Что-то я дико сомневаюсь, что робот не станет воспроизводить js файл только потому что он закрыт для индексации в robots.txt.
Это как минимум глупо.
Ответить с цитированием
  #10 (permalink)  
Старый 08.12.2017, 17:19
Интересующийся
Отправить личное сообщение для tester33 Посмотреть профиль Найти все сообщения от tester33
 
Регистрация: 07.12.2017
Сообщений: 13

Сообщение от void() Посмотреть сообщение
Когда-то в поисковой выдачи было очень много мусора. Фактически гугл и яндекс превратились в свалку. Но сейчас этого не наблюдается. Я когда что-то ищу в поисковиках, то мне в 100% случаев показывают крутые сайты, нормальные.

Так вот вопрос возникает... есть ли взаимосвязь между тем, чтобы криво закрыть какие-то ссылки в меню и рейтингом сайта в поисковике? Что-то я сомневаюсь . Скорей это будет считаться признаком некачественного сайта.
почитайте внимательно !
речь идет не о сайте, а о странице
кроме того, у поисковика и у посетителя, немного разные признаки некачественного сайта ))

если бы вы прочитали книгу, то поняли бы, что такой внутренний фактор ранжирования, как статический вес страницы, не имеет слишком большого значения
куда более значимый фактор - динамический вес, а также внешние и поведенческие факторы

правильная перелинковка страниц, не столько сильно поднимет страницы сайта в выдаче, сколько позволит распределить их относительный статический вес на сайте, тем самым, более акцентировать поисковик на требуемый документ, если у поисковика будет выбор какой документ сайта показать в выдаче

Последний раз редактировалось tester33, 08.12.2017 в 17:38.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите пожалуйста с калькулятором javascript Хабиб1122 Javascript под браузер 6 27.01.2016 11:56
JavaScript помогите написать программу sasha332 Общие вопросы Javascript 1 04.06.2014 09:19
Помогите переделать джаваскриптик! Михаил Цуркан Элементы интерфейса 1 01.05.2013 22:37
Помогите написать JavaScript ! Alamogoro Общие вопросы Javascript 4 24.05.2012 19:11
Помогите, пож, младенцу восстановить работоспобность JavaScript MishkaKosolapij Общие вопросы Javascript 4 16.08.2009 23:02