2013-08-14 2 views
-1

Я пробовал в течение нескольких месяцев, чтобы создать это сам, прежде чем спрашивать, но на этом этапе я вынужден признать, что я буду когда-либо наихудшим видом кражи кода, ужасно на javascript.Javascript Bookmarklet Получить Url Variable, Open Multiple Search Windows

Исповедь, мне нужен единый букмарклет, который при запуске получит 1 переменную из URL (т. Е. Q = 2075083, ВСЕГДА 7-значное число, q всегда будет идентификатором), откройте 2 новых вкладки, каждый используя переменную, захваченную для выполнения пользовательского поиска в каждой из двух других вкладок.

Там только еще один нюанс - мне нужно будет добавить больше вкладок поиска в будущем:/

И я потерялся пытаюсь сделать это самим. Может ли кто-нибудь предоставить свои знания или рекомендации?

Это операция, которую я выполняю сотни раз в день, и это значительно уменьшит количество щелчков мыши и операций копирования-вставки, которые я сделаю.

Большое спасибо всем, кто может помочь или посоветовать.

P.S. Я дошел до кода ниже (который я сделаю в закладке на более позднем этапе).

function getQueryVariable(variable) 
{ 
     var query = window.location.search.substring(1); 
     var vars = query.split("&"); 
     for (var i=0;i<vars.length;i++) { 
       var pair = vars[i].split("="); 
       if(pair[0] == variable){return pair[1];} 
     } 
     return(false); 
} 

Вызов getQueryVariable («д») возвращает номер мне нужно, но я понятия не имею, как его использовать создание двух других вкладок, которые ищут для него.

+1

вниз-голосования моей просьбы о помощи без каких-либо критиков не очень полезно. – ninjaholic

+0

Можете ли вы показать свой текущий прогресс? У вас есть работающая функция Javascript, которая может работать при передаче URL-адреса? – leesei

+0

Я обновил сообщение с кодом, который я получил до сих пор. Не знаю, как использовать его. – ninjaholic

ответ

2
javascript:var q=document.location.href.match(/q=(.*?)(?=&|$)/i);if(!q)alert('q not found');else {q=q[1];window.open('http://google.com/search?q='+q);window.open('http://bing.com/search?q='+q)} 

Замените google.com и bing.com на свой выбор.

Добавить еще window.open(...) для дополнительных вкладок.

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

+0

Я тебя люблю. Это работало БЕСПЛАТНО. Мой разум взорван, мягко говоря, и я навсегда благодарен !!!!!!! – ninjaholic

+0

Эй, DG, еще раз спасибо за этот ответ. Я надеялся, что вы можете быстро взглянуть на него снова, поскольку я попытался использовать этот скрипт в Firefox, но при запуске первоначального изменения окна, чтобы сказать '[object Window]'. Есть идеи? – ninjaholic

+0

Добавьте 'void (0);' в конец. (Если интересно, проверьте мою историю. Я ответил на связанный с ней вопрос в недавней истории, но у меня нет времени, чтобы его найти.) –