Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.06.2019, 09:10
Аватар для selevo
Кандидат Javascript-наук
Отправить личное сообщение для selevo Посмотреть профиль Найти все сообщения от selevo
 
Регистрация: 13.03.2013
Сообщений: 131

Как скопировать url при клике правой кнопкой мышки ?
Хочу скрипт доработать в tampermonkey...
if (e.target.tagName == 'A' && e.ctrlKey) {
		e.preventDefault();
      navigator.clipboard.writeText(e.target.href);
        console.log(e.target.href);

вот так работает , с такими ссылками:
<a href="/shops/izhevsk" class="header-link-TLsAU header-nav-link-126h3">Магазины</a>



но не копирует ссылку вот такого типа:

<a class="item-link-3sa3s" target="_self" href="/kirovskaya_oblast_kirov/tovary_dlya_kompyutera/hp_6200_pro_lga1155_4x_ddr3_1686238240">
<div class="item-image-22XyX"><img src="//20.img.avito.st/208x156/5649878220.jpg">
</div><div class="item-description-35ofR">

Последний раз редактировалось selevo, 01.07.2019 в 10:40.
Ответить с цитированием
  #2 (permalink)  
Старый 08.06.2019, 16:38
Аватар для selevo
Кандидат Javascript-наук
Отправить личное сообщение для selevo Посмотреть профиль Найти все сообщения от selevo
 
Регистрация: 13.03.2013
Сообщений: 131

видео
https://youtu.be/JgaXzcOi7Og
Ответить с цитированием
  #3 (permalink)  
Старый 08.06.2019, 16:47
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,005

if (e.ctrlKey) {
  var a = e.target.closest('a[href]');
  if (a && a.href) {
    e.preventDefault();
    navigator.clipboard.writeText(a.href);
    console.log(a.href);
  }
}
Ответить с цитированием
  #4 (permalink)  
Старый 08.06.2019, 18:04
Аватар для selevo
Кандидат Javascript-наук
Отправить личное сообщение для selevo Посмотреть профиль Найти все сообщения от selevo
 
Регистрация: 13.03.2013
Сообщений: 131

спасибо, то что надо !
А как сделать чтобы картинки пропускал ?
Я сделал пока тест на клик по картинке и выход...
Иначе он потом еще url ссылки выдаст на которую пришлепнута картинка.
Но это как-то не очень красиво по-моему.

document.addEventListener('contextmenu',e => 
 {
// берем ссылку на картинку если клик  был по картинке.
          if (e.target.tagName == 'IMG' && e.ctrlKey)
          {
        e.preventDefault();
      navigator.clipboard.writeText(e.target.src);
        console.log("IMG URL: "+e.target.src);
Return;        
  }

// Берем URL ссылки
    let that = e.target.closest('a');
      if(e.target.closest('a') && e.ctrlKey)
      {
        e.preventDefault();
        navigator.clipboard.writeText(that.href);
        console.log("URL:" +that.href);
 

 
      }

Последний раз редактировалось selevo, 08.06.2019 в 18:07.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как при клике, менять на нужную картинку Алексей_87К Events/DOM/Window 2 08.05.2019 14:37
как получить часть url return url nanana Общие вопросы Javascript 22 20.04.2014 18:28
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
как при клике на фотографию увеличить ее, затемнив фон Ichigeki ExtJS 3 23.06.2011 17:34
Как сделать? При выходе мышкой за пределы окна браузера, начинает грузится другая стр alb Events/DOM/Window 13 01.09.2010 12:19