Javascript.RU

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

Как скопировать 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">
<h3 class="item-title-5DOYd" title="HP 6200 pro lga1155 4x ddr3">
HP 6200 pro lga1155 4x ddr3</h3>
<div class="item-price-2587A item-black-3vIp8">1 500 ₽</div>
<div class="item-status-23mnk">
<div class="item-noaccent-3Bc-U">Осталось 20 дней</div></div><div class="item-stats-1Nngv"><div class="item-statsBlock-2wio8"><i class="item-icon-3N8KS item-iconViews-3EqgW"></i><span class="item-noaccent-3Bc-U">143</span></div><div class="item-statsBlock-2wio8"><i class="item-icon-3N8KS item-iconFavorites-1BMNR"></i><span class="item-noaccent-3Bc-U">5</span></div></div></div>
</a>

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

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

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 Посмотреть профиль Найти все сообщения от selevo
 
Регистрация: 13.03.2013
Сообщений: 60

спасибо, то что надо !
А как сделать чтобы картинки пропускал ?
Я сделал пока тест на клик по картинке и выход...
Иначе он потом еще 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 17:28
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 11:29
как при клике на фотографию увеличить ее, затемнив фон Ichigeki ExtJS 3 23.06.2011 16:34
Как сделать? При выходе мышкой за пределы окна браузера, начинает грузится другая стр alb Events/DOM/Window 13 01.09.2010 11:19