Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.01.2018, 13:33
Аспирант
Отправить личное сообщение для Exhaust_ Посмотреть профиль Найти все сообщения от Exhaust_
 
Регистрация: 16.09.2014
Сообщений: 52

Букмарклет который подсвечивает слово на странице...
Подскажите как сделать букмарклет, который подсвечивает фиксированный в коде адрес сайта на странице выдачи поисковика и перематывает страницу к первому посвеченному адресу?

И как соединить его вместе с этим букмарклетом, который добавляет нумерацию в выдачу Google:

javascript:(function(){ var style = document.createElement(%27style%27), styleContent = document.createTextNode(%27body{ counter-reset: resultat !important; } h3.r::before{ counter-increment: resultat !important; content: counter(resultat) \". \" !important; } %27); style.appendChild(styleContent ); var caput = document.getElementsByTagName(%27head%27); caput[0].appendChild(style); })();
Ответить с цитированием
  #2 (permalink)  
Старый 01.01.2018, 14:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от Exhaust_
фиксированный в коде адрес сайта
можно пояснить, что это?
Ответить с цитированием
  #3 (permalink)  
Старый 01.01.2018, 15:04
Аспирант
Отправить личное сообщение для Exhaust_ Посмотреть профиль Найти все сообщения от Exhaust_
 
Регистрация: 16.09.2014
Сообщений: 52

Имеется в виду что в коде букмарклета прописано что искать на странице нужно фразу "google.ru"
Ответить с цитированием
  #4 (permalink)  
Старый 01.01.2018, 15:22
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Exhaust_,
не представляю, как это можно делать.
а если подсветить ссылку которая содержит искомое слово? (искать только на английском)
Ответить с цитированием
  #5 (permalink)  
Старый 01.01.2018, 15:28
Аспирант
Отправить личное сообщение для Exhaust_ Посмотреть профиль Найти все сообщения от Exhaust_
 
Регистрация: 16.09.2014
Сообщений: 52

Только на английском и везде одна и та же фраза "google.ru". По сути это букмарклет, которым нужно подсвечивать только текст "google.ru" на любой странице, где его применяют. Перемотка к подсвеченному тексту была бы полезной, но не обязательна.
Ответить с цитированием
  #6 (permalink)  
Старый 01.01.2018, 15:38
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Exhaust_,
может Ctrl + F
Ответить с цитированием
  #7 (permalink)  
Старый 01.01.2018, 15:43
Аспирант
Отправить личное сообщение для Exhaust_ Посмотреть профиль Найти все сообщения от Exhaust_
 
Регистрация: 16.09.2014
Сообщений: 52

по сути да, но мне поставили задачу добавить эту функцию к этому букмарклету:

javascript:(function(){ var style = document.createElement(%27style%27), styleContent = document.createTextNode(%27body{ counter-reset: resultat !important; } h3.r::before{ counter-increment: resultat !important; content: counter(resultat) \". \" !important; } %27); style.appendChild(styleContent ); var caput = document.getElementsByTagName(%27head%27); caput[0].appendChild(style); })();
Ответить с цитированием
  #8 (permalink)  
Старый 01.01.2018, 16:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Exhaust_,
если подсветить ссылку то можно так
h3.r [href*=google.ru] {background-color: rgba(240, 230, 140, 1); color: rgba(0, 0, 0, 1);} h3.r::before
Ответить с цитированием
  #9 (permalink)  
Старый 01.01.2018, 23:47
Аспирант
Отправить личное сообщение для Exhaust_ Посмотреть профиль Найти все сообщения от Exhaust_
 
Регистрация: 16.09.2014
Сообщений: 52

Это текст, чисто css-ом вряд ли можно что-то сделать
Ответить с цитированием
  #10 (permalink)  
Старый 02.01.2018, 00:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Exhaust_,
добавлено отсюда highlight-bookmarklet
javascript:(function(){ var style = document.createElement("style"), styleContent = document.createTextNode("body{ counter-reset: resultat !important; } h3.r::before{ counter-increment: resultat !important; content: counter(resultat) \". \" !important; } "); style.appendChild(styleContent ); var caput = document.getElementsByTagName("head"); caput[0].appendChild(style);var count=0, text, dv;text=document.querySelector("#lst-ib").value.trim();if(text==null || text.length==0)return;dv=document.defaultView;function searchWithinNode(node, te, len){var pos, skip, spannode, middlebit, endbit, middleclone;skip=0;if( node.nodeType==3 ){pos=node.data.toUpperCase().indexOf(te);if(pos>=0){spannode=document.createElement("SPAN");spannode.style.backgroundColor="yellow";middlebit=node.splitText(pos);endbit=middlebit.splitText(len);middleclone=middlebit.cloneNode(true);spannode.appendChild(middleclone);middlebit.parentNode.replaceChild(spannode,middlebit);++count;skip=1;}}else if( node.nodeType==1&& node.childNodes && node.tagName.toUpperCase()!="SCRIPT" && node.tagName.toUpperCase!="STYLE"){for (var child=0; child < node.childNodes.length; ++child){child=child+searchWithinNode(node.childNodes[child], te, len);}}return skip;}window.status="Searching for '"+text+"'...";searchWithinNode(document.body, text.toUpperCase(), text.length);window.status="Found "+count+" occurrence"+(count==1?"":"s")+" of '"+text+"'.";})();
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен код который будет искать совпадения на странице и потом пролистывать до нужной nomerochek Javascript под браузер 1 08.09.2016 10:33
Динамическое отображение контента на 2ой странице, в зависимости от выбора на 1ой Volchen0ck Events/DOM/Window 2 14.05.2014 16:01
Получить слово на onclick AlexDodonov Events/DOM/Window 7 26.02.2010 21:46