Я пытаюсь создать букмарклет Javascript, который будет извлекать числовой идентификатор из URL:
http://site-1/script-1.php?ID=12345678&other-params
, а затем перенаправить браузер на новый URL:
http://site-2/script-2.php?id=12345678
Я искал в сети примеры букмарклетов, и у меня есть 2 вопроса, пожалуйста:
1) Нужно ли размещать мой JS-код внутри пустоты ?
javascript:void(XXX);
Что означает void в этом контексте?
2) Должен ли я использовать location.href для чтения старого URL и назначения нового созданного URL?Я спрашиваю, потому что я видел много странных фрагментов кода, таких как String (location.href) и т. Д. - как будто ему нужно приведение к String (не так ли?)
ОБНОВЛЕНИЕ: Я попробовал следующий код, но, к сожалению, в Chrome ничего не происходит, когда я на старой странице и нажимаю на мой букмарклет (в надежде перейти на новую страницу):
javascript:void (
if ( var match = location.search.match(/id=(\d+)/i) )
location = 'http://site-2/script-2.php?id=' + match[1];
)
(я добавил выше разрывы строк, и да, я пытаюсь использовать один "=")
ОБНОВЛЕНИЕ 2: Моя вторая попытка- просто пытаюсь отобразить новый URL:
javascript:void (
var match = location.search.match(/ID=(\d+)/);
alert('http://site-2/script-2.php?id=' + match[1]);
)
, но все равно ничего не происходит, когда я нажимаю закладку на панели закладок.И я вижу в консоли Google Chrome:
Uncaught SyntaxError: Unexpected token var