Спасибо InfMag что отвечаешь. testUrlForLocal работает, но немного не доделанная. Если к примеру адрес сайта http://localhost и в функцию посылать этот адрес, то она возвращает true (все верно), но и если адрес сайта будет к примеру http://localhost.ru то тоже возвратит true. Поэтому я решил смешать ваш скрипт с тем что я нагуглил и получилось очень даже хорошо.
| Код | function isLocalURL(url) { var url = url.replace(/www\./ig, ''), match = url.match(/^([^:\/?#]+:)?(?:\/\/([^\/?#]*))?([^?#]+)?(\?[^#]*)?(#.*)?/); if (typeof match[1] === "string" && match[1].length > 0 && match[1].toLowerCase() !== location.protocol) return false; if (typeof match[2] === "string" && match[2].length > 0 && match[2].replace(new RegExp(":("+{"http:":80,"https:":443}[location.protocol]+")?$"), "") !== location.host) return false; return true; }
|
Добавил url.replace(/www\./ig, '') и теперь все ровно. |