как получить часть url return url
Привет всем!
Вопрос от человека далекого от javaScript. у меня есть URL типа http://aaa.ru/?066 как мне получить только http://aaa.ru (должен быть return ) :help: заранее спасибо за помощь |
Если урл берется из адресной строки, то проще всего через window.location.hostname
А если это переменная, то с помощью регулярного выражения. Вопросительный знак после слеша всегда идет? |
спасибо за ответ. да всегда, мне нужна функция с return. так можно сделать?
|
Цитата:
function host(url) { return url.split('/?')[0] } alert(host('http://aaa.ru/?066')); P.S. а кто подскажет, как на форуме вставлять скрипт, который можно запускать? |
Спасибо огромное!!! только числа динамически меняются (забыл написать)
|
Цитата:
Функция "рубит" на куски строку, встречая последовательность "/?" и возвращает первый из получившихся кусков. Если последовательность не встретится, вернет всю строку нерубленной. |
спасибо
|
Цитата:
|
Цитата:
|
Цитата:
Можно убрать из сплитера слеш, я думаю результат от этого не пострадает. А если отсутствие последнего слеша в возвращаемой строке критично, его не трудно удалить. Не хочется на ровном месте регулярки прикручивать ;) |
Цитата:
:dance: |
Привет Всем! я не правильно поставил задачу
у меня есть url: http://aaaa.ee.xxx.net/XX/HelloWeb3book.html?bor=BM92 должно получиться: http://aaaa.ee.xxx.net/XX/HelloWeb3book.html Спасибо |
var url = window.href.split('?')[0]; //Или window.location.href.replace(new RegExp(window.location.search), ''); history.pushState(null, null, url); |
Спасибо, а с return можно сделать?
|
Цитата:
Интересно, для чего я разъяснял принцип работы... |
nanana, так Вам нужно просто вернуть ссылку как строку? Я думал Вам нужно в самой строке браузера поменять.
Тогда: Цитата:
|
Цитата:
|
nanana, не прав.
|
спасибо
|
Очень надеюсь на вашу помощь!
Ковыряю в wordpress. Хочу обрезать конец ссылки типа _http://mysite.ru/wp-content/uploads/2014/04/hong_kong-2008-07-1024x768.jpg до _http://mysite.ru/wp-content/uploads/2014/04/hong_kong-2008-07.jpg То есть чтобы ссылка вела не на копию загружаемого изображения, а на сам оригинал. Немного поясню. Когда в wordpress загружаются большие изображения, то автоматически создаются их копии уменьшенных размеров, в конец названий адресов которых добавляются соответствующие разрешения. В зависимости от загружаемого изображения они могут быть переменной длины. То есть из портретного оригинала 1944×2592px создастся large копия с адресом *-768x1024.jpg, а из альбомного с разрешением 2592×1944px large копия с адресом *-1024x768.jpg Собственно сама проблема подробно изложена здесь и здесь. Примеры тестовых галерей, в которых провожу опыты, по этой ссылке. Сам плагин Auto ThickBox Plus, в thickbox.min.js которого вставил кнопку, находится по этому адресу. Для решения задачи с кнопкой поступил примитивно - нашёл в thickbox.min.js код отвечающий за открытие картинки в новом окне и скопировал его там же перед кнопкой закрытия. Сам код вот такой: <a id='original' href='"+c+"' title='"+thickboxL10n.open+"'>Оригинал</a> Хотя если из кода убрать "+c+", то тоже будет открывать. Но сам код выводит вчистую загружаемую в лайгхтбокс картинку. То есть с добавкой в адрес "-1024x768.jpg". А хотелось чтобы ссылка вела на оригинал картинки, то есть чтобы адрес был без этой добавки. Пробовал загружать в лайтбоксы оригиналы картинок. В плагине Responsive Gallery Grid такое можно сделать, Но тогда картинки ме-е-дленно загружаются и листаются в лайгхтбоксах. Попытался ссылки на оригиналы в подписях вводить. Так их хрефы видны на всплывающих титлах миниатюр. На миниатюрах последней галереи это хорошо видно. Тоже плохо. Помогите пожалуйста, а то меня эта проблема малость достала. Не перестаю о ней думать несколько дней. Может в код вместо "+c+" нужно какую-либо функцию подставить? Которая с помощью регулярных выражений или ещё как-нибудь там отсекала конец адреса? |
rikitiki, замените c на что-нить вроде этого:
c.replace(c.match(/(-\d{1,4}x\d{1,4})\./)[1], '') |
С сомнением вставил вместо с c.replace(c.match(/(-\d{1,4}x\d{1,4})\./)[1], '') .... и... сработало!!!
Я от чуть с кресла не свалился от изумления! Большое спасибо!!! Вот уж дествительно верный ник - Профессор. Остаётся только добавить ещё кнопку. Одна пусть ведёт на загружаемую фотографию, а другая на оригинал. Такие кнопки будут полезны также на маленьких экранах мобильных устройств. На них лайгбоксы вид картинок портят. Да и скачать картину через лайгхтбокс нельзя. |
Эх..! Не бывает всё так гладко.
Столкнулся с неувязкой. Большие фотографии грузятся хорошо. А вот на маленьких оригиналах ThickBox зависает. Наверное wordpress не создаёт large копии, когда загружаются маленькие фотографии. Скрипт ищет-ищет large-приставку, а найти не может. Я так понимаю что replace переводится как замена. Но как он может заменить то чего нет. Наверное replace меняет найденное регулярным выражением совпадение на пустоту. Я правильно понял? А если не находит, тогда что? Когда курсор на миниатюру ставишь, то видно что ссылка ведёт на оригинальную фотку без приставки -768x1024.jpg Специально для последней галереи загрузил на сайт пару маленьких фотографий с котами с разрешением менее 600px: http://santa.besaba.com/proverochnaya-zapis-4/ Как же это обойти? Помогите пожалуйста! :( |
Часовой пояс GMT +3, время: 14:54. |