Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/25: Рейтинг темы: голосов - 25, средняя оценка - 4.64
5 / 5 / 0
Регистрация: 20.08.2017
Сообщений: 685

Как найти ссылки в списке и устанавливать им дополнительные стили

04.03.2019, 19:38. Показов 5676. Ответов 17

Студворк — интернет-сервис помощи студентам
Подскажите как мне найти ссылки в списке и устанавливать им дополнительные стили. Написал такой код:

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<script>
<body>
<ul>
<p><li><a href = "https://google.com"> Гугл</a></p></li>
<p><li><a href="https://itstep.org"> Шаг</a></p></li>
<p><li><a href= "https://mystat.itstep.org"> Май стат</a></p></li>
<p><li><a href="https://bigpicture.ru/?p=527019"> Кошара</a></p></li>
<p><li><a href=""> Собака</a></p></li>
<p><li><a href=""> Playboy</a></p></li>
</ul>
 
<script>
var res =  str.match( /https/i );
  //var elements = document.querySelectorAll('ul > li:last-child');
 
  for (var i = 0; i < elements.length; i++) 
  {
   // --- логика  проверки  является ли ссылка локальной или  нет--//
  }
</script>
 
 
    
</body>/script>
CSS
1
2
3
4
5
6
7
a {
    color: blue; /* Цвет ссылок */
    text-decoration: none; /* Убираем подчёркивание */
   }
   a:hover {
    border-bottom: 1px dashed blue; /* Добавляем синее пунктирное подчёркивание */
   }
Но так как в JS я новичок не знаю какую проверку написать надо что бы узнать какая ссылка локальная какая нет

было предположение сделать что то типа такого:
if(elements[i]=="res")
elements[i] = // тут присвоить сss стиль но тоже не знаю как(((
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.03.2019, 19:38
Ответы с готовыми решениями:

Дополнительные CSS-стили - в чем ошибка?
доброе утро Подскажите pls Дополнительные CSS-стили - в чем ошибка? На сайте РЕМОНТ КОМПЬЮТЕРОВ стоит тема Movers Packers и в...

Какие расценки устанавливать на ссылки?
Какие расценки устанавливать на ссылки? На главной, 1-го уровня, 2-го уровня. Форум *.3bb.ru Тематика преимущественно...

Дополнительные данные в выпадающем списке ComboBox
Есть некая коллекция в которой есть 2 поля. Первое - номер, а второе - имя. Например: 1 Bill 2 Henry 3 Mark Коллекция привязана к...

17
 Аватар для sash23
563 / 410 / 259
Регистрация: 31.05.2016
Сообщений: 1,105
04.03.2019, 20:02
найдет локальные ссылки то есть те которые не начинаются с http
JavaScript
1
var links = document.querySelectorAll('ul a:not([href^="http"])');
вот пример https://jsfiddle.net/4ugy6kb1/2/
1
5 / 5 / 0
Регистрация: 20.08.2017
Сообщений: 685
04.03.2019, 20:12  [ТС]
sash23, простите, а могли бы прокомментировать что происходит тут
JavaScript
1
('ul a:not([href^="http"])');
Добавлено через 5 минут
sash23, а можно ли как то стиль подчеркивания присвоить вместо цвета т.е. то что у меня указано в css
1
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
04.03.2019, 20:23
Esso11, внешним ссылкам. начинающимся с http: или https:
можно присвоить отдельный класс .a
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <style>
        .a {
            color: blue;
            /* Цвет ссылок */
            text-decoration: none;
            /* Убираем подчёркивание */
        }
 
        .a:hover {
            border-bottom: 1px dashed blue;
            /* Добавляем синее пунктирное подчёркивание */
        }
    </style>
</head>
<body>
    <ul>
        <li><a href="https://google.com"> Гугл</a></li>
        <li><a href="https://itstep.org"> Шаг</a></li>
        <li><a href="https://mystat.itstep.org"> Май стат</a></li>
        <li><a href="https://bigpicture.ru/?p=527019"> Кошара</a></li>
        <li><a href=""> Собака</a></li>
        <li><a href=""> Playboy</a></li>
    </ul>
    <script>
        for (let e of Array.from(document.links)) { // document.links для упрощения - все ссылки в документе
            if (e.href.match(/^https?:/i))
                e.classList.add("a")
        }
    </script>
</body>
</html>
0
 Аватар для sash23
563 / 410 / 259
Регистрация: 31.05.2016
Сообщений: 1,105
04.03.2019, 20:23
Esso11,

JavaScript
1
el.style.borderBottom = '1px dashed blue';
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
04.03.2019, 20:24
Хотя да, сложным css-селектором выбрать необходимые ссылки - круче.
0
 Аватар для sash23
563 / 410 / 259
Регистрация: 31.05.2016
Сообщений: 1,105
04.03.2019, 20:28
Тоже самое можно сделать и без JS.
CSS
1
2
3
4
5
6
7
ul a {
  text-decoration: none;
}
 
ul a:not([href^="http"]) {
  border-bottom: 1px dashed blue;
}
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
04.03.2019, 20:35
sash23, селектор просто разрастается, если одновременно http: и https: проверять.
0
5 / 5 / 0
Регистрация: 20.08.2017
Сообщений: 685
04.03.2019, 20:39  [ТС]
amr-now, т.е. еще один класс создать?

Добавлено через 2 минуты
amr-now, не я не крутой мне для аутистов подошло бы, подскажите как мне создать 2 класса если в стилях если она будут называться одинаково. Разве конфликта имен не произойдет?
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
04.03.2019, 20:39
Esso11, задачу сформулируйте точнее.
Что делать с локальными ссылками?
Что делать с http: ?
Что делать с https: ?
0
5 / 5 / 0
Регистрация: 20.08.2017
Сообщений: 685
04.03.2019, 20:40  [ТС]
amr-now, Ссылки на внешние источники (которые начинаются с http://)
необходимо подчеркнуть пунктиром.
Искать такие ссылки в списке и устанавливать им дополнительные стили необходимо с помощью JS.
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
04.03.2019, 20:41
Esso11, https:// не начинается с http://
Что в этом случае делать?
0
5 / 5 / 0
Регистрация: 20.08.2017
Сообщений: 685
04.03.2019, 20:43  [ТС]
amr-now,с https: выделение другим цветом не таким как локальная ссылка

Добавлено через 1 минуту
amr-now, не правильно написал первую ссылку там http://
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
04.03.2019, 20:43
Подчеркнуть пунктиром при наведении или навеки? А при ненаведении какие?
0
5 / 5 / 0
Регистрация: 20.08.2017
Сообщений: 685
04.03.2019, 20:46  [ТС]
amr-now, при наведении на любую ссылку назначить различный стиль, что бы было понятно что сработал поиск и установился заданный стиль

Добавлено через 37 секунд
amr-now, да при ненаведении они просто не подчеркнутые там стоят же
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
04.03.2019, 20:52
Esso11, sash23, кто как, а я задачу пока вообще не понял.
Что делать с локальными ссылками?
Что делать с http: ?
Что делать с https: ?

С каким они стилем без наведения и при наведении?

И где ссылки с http://
0
5 / 5 / 0
Регистрация: 20.08.2017
Сообщений: 685
04.03.2019, 20:53  [ТС]
amr-now, sash23, ладно, спасибо вам за помощь, понял куда надо "копать" почитаю про селекторы попробую сам дописать

Добавлено через 12 секунд
извините если занял ваше время
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
04.03.2019, 21:01
Esso11,
Если так нужно для всех элементов <a>, то все синие и без подчеркивания
CSS
1
2
3
4
   a {
    color: blue; /* Цвет ссылок */
    text-decoration: none; /* Убираем подчёркивание */
   }
Настоящие внешние ссылки с классом .а с пунктирным подчеркиванием при наведении. Ненаведенные ничем не отличаются от внутренних ссылок.
CSS
1
2
3
   .a:hover {
    border-bottom: 1px dashed blue; /* Добавляем синее пунктирное подчёркивание */
   }
Класс .а навешивается в моем ответе №4
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.03.2019, 21:01
Помогаю со студенческими работами здесь

Как правильно создать стиль для ссылки в списке
Помогите пожалйста. вот у меня такой блок сайта &lt;ol class=&quot;round&quot;&gt; &lt;li&gt; &lt;a...

Дополнительные ссылки в выдаче
Здравствуйте форумчане. Заметил, что с моим сайтом произошла такая штука: Когда я ввожу в поиск свой домен и зону, то я вижу свою...

Как в зависимости от ссылки - выбрать соответствующий параметр в выпадающем списке
Задача: в зависимости от ссылки - выбирать соответствующий параметр в выпадающем списке формы. есть 3 ссылки на первой странице На...

Можно ли на сайтах с такими IP устанавливать друг на друга ссылки?
Вопрос в заголовке. Вот IP: 85.221.148.34 85.221.149.130 85.221.150.238 Ну и т.д. Думаю понятно. IP изменены немного первые 2-е...

Дополнительные ссылки в результатах поисковика
Здравствуйте. Во-первых, извините за заголовок. Не зна, как называется. Скажем, у меня есть сайт example.com и был проиндексирован...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru