2016-02-24 2 views
0

Я пытаюсь заменить посещенный URL другим URL-адресом, когда используются определенные поисковые термины.Сценарий Tampermonkey не перенаправляет на ожидаемый URL-адрес?

Однако, просматривая bing.com на срок "foobar", вы получаете URL-адрес bing.com/www.google.com.au, а не только google.com.au.

Я попытался с помощью обоих location.href и location.replace():

var OldUrl = location.href 
var NewUrl = "www.google.com.au"; 

var arr = ["foobar"]; 
for (var i = 0, len = arr.length; i < len; ++i) { 
    if (OldUrl.indexOf(arr[i]) != -1) { 
     // str contains arr[i] 
     location.href = NewUrl; 
     //location.replace(NewUrl); 
     found = true; 
     break; 
    } 
} 
+0

Вы должны префиксом свой адрес с протоколом (например, 'HTTP: // или' https: // ') в противном случае он обрабатывается как относительный URL , – CollinD

+1

@CollinD Спасибо, добавив, что протокол работал. Если вы напишете ответ, я соглашусь. – yoshiserry

ответ

1

URL-адреса рассматриваются как относительно, если не приставкой с протоколом. Для того, чтобы решить проблему, в частности, я хотел бы предложить

var NewUrl = 'https://www.google.com.au' 
Смежные вопросы