Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/22: Рейтинг темы: голосов - 22, средняя оценка - 4.68
-23 / 2 / 0
Регистрация: 20.04.2015
Сообщений: 291

Удаление ссылки при нажатии

10.05.2021, 09:43. Показов 4669. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! подскажите пожалуйста! как сделать ссылку которая удаляется при нажатии навсегда, после обновления не появляется ?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.05.2021, 09:43
Ответы с готовыми решениями:

При нажатии на ссылку - получить title ссылки
Всем привет. Есть ссылка <a href="/" title="www.ya.ru" class="" target="">текст</a>. При нажатии на ссылку, должен копироваться текст...

Как сделать при нажатии на кнопку, карточку активным, а при нажатии на саму карточку, уже не активной
Кароче, у меня есть карточка и в ней кнопка, при нажатии на кнопку должен добавиться класс с фильтром,(т.е. карточка теперь активная) а...

При нажатии на кнопку должна отображатся другая картинка ,при повторном нажатии снова первая картинка
На html языке отобразить картинку и кнопку.При нажатии на кнопку должна отображатся другая картинка ,при повторном нажатии снова первая...

15
Coding is art
Эксперт JS
540 / 423 / 154
Регистрация: 04.09.2013
Сообщений: 1,066
10.05.2021, 19:47
нужно больше контекста, от куда ссылка берётся? удалится должна у всех или только у того, кто удалил?
1
-23 / 2 / 0
Регистрация: 20.04.2015
Сообщений: 291
10.05.2021, 19:56  [ТС]
Добрый веер! под ссылкой я имел ввиду копку, при нажатии которая исчезала бы

Добавлено через 2 минуты
что бы пользователь id, мог один раз воспользоваться
0
Coding is art
Эксперт JS
540 / 423 / 154
Регистрация: 04.09.2013
Сообщений: 1,066
10.05.2021, 20:03
вы бы хоть попробовали ответить на вопросы которые я спрашивал...

Цитата Сообщение от muxahuk1214 Посмотреть сообщение
от куда ссылка берётся?
Цитата Сообщение от muxahuk1214 Посмотреть сообщение
удалится должна у всех или только у того, кто удалил?
что при нажатии должно произойти, кроме удаления кнопки (к чему бы можно было бы привязать "показывать кнопку или нет"?) например после нажатия должно что-то измениться в базе?
1
-23 / 2 / 0
Регистрация: 20.04.2015
Сообщений: 291
10.05.2021, 20:05  [ТС]
переход по ссылке осуществляться просто, удалиться кнопка должна у того кто прошёл по ссылке нажал на кнопку
0
Coding is art
Эксперт JS
540 / 423 / 154
Регистрация: 04.09.2013
Сообщений: 1,066
10.05.2021, 20:07
Цитата Сообщение от Игорь и Посмотреть сообщение
переход по ссылке осуществляться просто
Цитата Сообщение от muxahuk1214 Посмотреть сообщение
удалится должна у всех или только у того, кто удалил?
???
1
-23 / 2 / 0
Регистрация: 20.04.2015
Сообщений: 291
10.05.2021, 20:28  [ТС]
у того кто удалил , прошёл по ссылке
0
Coding is art
Эксперт JS
540 / 423 / 154
Регистрация: 04.09.2013
Сообщений: 1,066
10.05.2021, 20:56
Лучший ответ Сообщение было отмечено Игорь и как решение

Решение

1 вариант:

сделать это в браузере, добавив некую переменную в localStorage при загрузке страницы читать эту переменную, если она есть то удалять кнопку со страницы, если нет то вешать событие на нажатие кнопки.. в событии сохранять значение в localStorage и делать что там дальше должно происходить по нажатию на кнопку что-то примерно как-то так:
JavaScript
1
2
3
4
5
6
7
8
9
10
const $button = document.querySelector('button');
const hideButton = localStorage.getItem('isButtonHidden');
if (hideButton === 'true) {
  $button.parentNode.removeChild($button);
} else {
  function onButtonClick() {
    localStorage.setItem('isButtonHidden', 'true');
  }
  $button.addEventListener('click', onButtonClick);
}
НО! в таком способе сохраняется только в браузере информация для 1 пользователя, т.е. с другого браузера или с инкогнито у него будет кнопка видна...

2й способ:

На бэкенде нужно реализовать какое-то хранилище, где будут указаны id пользователя и "перешёл" или "не перешёл" ли он по ссылке.. например можно сделать таблицу в базе или json файл из которого читать и в который писать..
суть заключается в том, что при загрузке страницы на бэкенде мы читаем эти данные и если нет пользователя в таблице или значение "перешёл" ли он == false, то показываем кнопку и точно так же подписываемся на событие нажатия, но в отличии от предыдущего варианта - нужно на бэкенде реализовать некий api путь, при запросе на который будет меняться значение в базе или json'е..
и тогда, если кнопка есть, то как-то примерно так будет выглядеть событие в js:

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
const $button = document.querySelector('button');
function onButtonClick(event) {
  event.preventDefault(); // предотвращаем дефолтный клик браузера
  fetch('https://backend-url.domain/buttonNavigation/${userId}').then(() => {
    // тут делаем то, что должна была сделать кнопка
    window.open('http://some-url.com/', true);
  })
  .catch(error => {
    // ошибка сохранения делаем что-то..
    console.error(error);
  });
}
$button.addEventListener('click', onButtonClick);
ну и то место где выводится кнопка на бэкенде нужно обернуть в if else, что бы выводило только если значение не true
3
-23 / 2 / 0
Регистрация: 20.04.2015
Сообщений: 291
11.05.2021, 08:05  [ТС]
Добрый день! вот ещё есть конкретный класс кнопки,ссылка
CSS
1
a.class="profile-label"
0
-23 / 2 / 0
Регистрация: 20.04.2015
Сообщений: 291
11.05.2021, 17:50  [ТС]
muxahuk1214, Добрый вечер! вот смотрите может это проще ещё , вот кнопка но она после обновления с ново появляется а надо что бы не появлялась
HTML5
1
<button onclick="this.remove();">кнопка</button>
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
11.05.2021, 18:48
Цитата Сообщение от Игорь и Посмотреть сообщение
вот кнопка но она после обновления с ново появляется а надо что бы не появлялась
вы читаете что вам советуют?
muxahuk1214, все разложил по полочкам, куда уж подробней
0
Coding is art
Эксперт JS
540 / 423 / 154
Регистрация: 04.09.2013
Сообщений: 1,066
11.05.2021, 19:24
Лучший ответ Сообщение было отмечено Игорь и как решение

Решение

Цитата Сообщение от fanatikus Посмотреть сообщение
muxahuk1214, все разложил по полочкам, куда уж подробней

Не по теме:

он по ходу троллит...



Цитата Сообщение от Игорь и Посмотреть сообщение
muxahuk1214, Добрый вечер! вот смотрите может это проще ещё , вот кнопка но она после обновления с ново появляется а надо что бы не появлялась
читайте мой предыдущий ответ: Удаление ссылки при нажатии
1
-23 / 2 / 0
Регистрация: 20.04.2015
Сообщений: 291
11.05.2021, 19:30  [ТС]
Спасибо! вам большое! великий мастер!

Добавлено через 3 минуты
muxahuk1214, больше не смею вас отвлекать
0
 Аватар для klyapa
3503 / 1267 / 429
Регистрация: 24.07.2016
Сообщений: 1,890
15.05.2021, 21:29
Лучший ответ Сообщение было отмечено Игорь и как решение

Решение

HTML5
1
2
3
4
5
6
7
<body>
    <h1>Удалить ссылку при нажатии "навсегда"</h1>
    
    <p><a href="images/max1.jpg">Ссылка 1</a></p>
    <p><a href="images/max2.jpg">Ссылка 2</a></p>
    <p><a href="images/max3.jpg">Ссылка 3</a></p>
</body>
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
((window, undefined) => {
    
    if( !window.localStorage ) return;
    
    const keyUser = '_del_link';
    
    const decor = (arr) => {
        
        return (e) => {
            arr.push( e.currentTarget.getAttribute('href') );
            localStorage.setItem( keyUser, JSON.stringify(arr) );
            e.currentTarget.parentNode.removeChild(e.currentTarget);
        }
    
    }
    
    const loadPage = (e) => {
        
        let linkCollection = document.links;
        // let linkCollection = document.querySelectorAll('a.profile-label');
        
        let dataUser = JSON.parse( localStorage.getItem(keyUser) || JSON.stringify([]) );
        
        const clickLink = decor(dataUser);
        
        for(let i = 0; i < linkCollection.length; i++) {
            linkCollection[i].addEventListener('click', clickLink, false);
        }
        
        for(let i = 0; i < dataUser.length; i++) {
            for(let j = 0; j < linkCollection.length; j++) {
                if( dataUser[i] === linkCollection[j].getAttribute('href') ) {
                    linkCollection[j].removeEventListener('click', clickLink, false);
                    linkCollection[j].parentNode.removeChild(linkCollection[j]);
                }
            }
        }
    
    }
 
    addEventListener('load', loadPage, false);
    
})(window);
 
// console
// localStorage.removeItem('_del_link');
1
-23 / 2 / 0
Регистрация: 20.04.2015
Сообщений: 291
16.05.2021, 09:11  [ТС]
klyapa, Спасибо! Большое! то что надо
0
 Аватар для klyapa
3503 / 1267 / 429
Регистрация: 24.07.2016
Сообщений: 1,890
19.05.2021, 11:30
read
Вложения
Тип файла: zip RE.zip (18.7 Кб, 9 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.05.2021, 11:30
Помогаю со студенческими работами здесь

Смена картинки при нажатии на ссылки
Как сделать простой слайдер? Я загружаю на сервер 100 картинок книги, и мне нужно что бы можно было выбирать страницы и они показывались....

Открытие ссылки при нажатии кнопки
Привет! Подскажите, плиз, как сделать, чтобы по нажатию кнопки ссылка сразу открывалась, а не появлялась наверху? И есть ли у вас другие...

Смена stylesheet ссылки при нажатии на картинку
Всем привет, помогите решить задачку: Вот к примеру наши .css: &lt;link rel=&quot;stylesheet&quot; href=&quot;&lt;?php echo...

Вставка картинки при нажатии на область ссылки
Пытаюсь сделать: при нажатии на область ссылки, на область другой ссылки должна накладываться картинка. Второй объект не обязательно должен...

Выдвижной и задвижной блок при нажатии на разные ссылки
Есть небольшой блок div который по умолчанию скрыт. Есть 2 ссылки, одна на странице а другая в самом блоке. Нужно что-бы при нажатии на...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru