Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как правильно убрать значение rel? (https://javascript.ru/forum/dom-window/43785-kak-pravilno-ubrat-znachenie-rel.html)

winston3d 20.12.2013 15:53

Как правильно убрать значение rel?
 
Всем привет!
Необходимо максимально эффективно найти элемент (ссылку) с классом 'url' и удалить из rel значение ' nofollow'. Как это правильно сделать? Перебирать весь html код немножко глупо, нужно сразу отсеять либо ссылки, либо элементы с классом 'url'. Ну и заменить, наверное replaceText подойдёт.
Подскажите, какие должны бить эти заветные пара строк)

danik.js 20.12.2013 16:16

Цитата:

Сообщение от winston3d
Необходимо максимально эффективно найти элемент (ссылку) с классом 'url' и удалить из rel значение ' nofollow'

И какой в этом смысл, разрешите полюбопытствовать? Это точно нужно делать в браузере?

winston3d 20.12.2013 16:22

Какая разница в чём смысл, а вообще я думал, что и так все поймут. Псевдо dofollow

danik.js 20.12.2013 16:27

Стоп. Это нужно сделать в исходнике? Тогда причем тут javascript? Текстовый редактор тебе в руки.

Цитата:

Сообщение от winston3d
вообще я думал, что и так все поймут

Ага, и именно для лучшего понимания ты и опубликовал вопрос, связанный с текстовыми редакторами в разделе яваскрипта, да?

winston3d 20.12.2013 16:30

Причём тут текстовый редактор? Нужно удалять для людей, но не для ПС

danik.js 20.12.2013 16:41

Цитата:

Сообщение от winston3d
Нужно удалять для людей

Во как? Ну я ведь спрашивал:
Цитата:

Сообщение от danik.js
Это точно нужно делать в браузере?

Ок, вот тебе код:

document.querySelector('a.url').rel = '';


Если в rel есть другие токены, которые нельзя удалять, то так:
var link = document.querySelector('a.url');
link.rel = link.rel.replace('nofollow', '');


Взамен полюбопытствую: какая разница пользователю какой там атрибут у ссылки? Разве nofollow не только для поисковкиков?

winston3d 20.12.2013 16:51

Что-то не очень работает. Может нужно указывать всю иерархию div'ов и классов? И куда вставлять скрипт, до или после ссылок?
Nofollow учитывают поисковики, а я провожу эксперимент. Люди активничают на dofollow блогах - часто заходят, пишут комменты, указывают ссылки (часто dofollow) на такие блоги в постах на своих блогах и так далее.
Люди заметят (или сам сообщишь), что твой блог dofollow, то можно получить некую маржу. Вот и пытаюсь подтвердить эту теарию.

danik.js 20.12.2013 16:58

Цитата:

Сообщение от winston3d
Люди заметят (или сам сообщишь), что твой блог dofollow

Думаю что кто-нибудь запросто для проверки нажмет не F12, а Ctrl+U, а там все как на ладони.

Код конечно же после ссылок нужно вставлять. Либо вешать на onload/DOMContentLoaded

winston3d 20.12.2013 18:00

Мало кто Ctr+U делает, так что я в безопасности)) Да и тогда просто теория не подтвердится.
А можно как то сразу несколько значений в document.querySelector() вставить? Ну например, 'cite.fn a.url' и ''a.url'
И кстати, только у первой попавшейся ссылки происходит изменение, а не у всех(

danik.js 20.12.2013 18:35

Цитата:

Сообщение от winston3d
А можно как то сразу несколько значений в document.querySelector() вставить? Ну например, 'cite.fn a.url' и ''a.url'

Можно указать несколько селекторов через запятую. А то что ты предложил - это один составной селектор (любой a.url, являющийся потомком cite.fn).

var links = document.querySelectorAll('a.url');
for (var i = 0, link; link = links[i]; i++) {
    link.rel = link.rel.replace('nofollow', '');
}


Часовой пояс GMT +3, время: 11:35.