Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Поиск "все в одном" (https://javascript.ru/forum/misc/15202-poisk-vse-v-odnom.html)

softer21 17.02.2011 02:24

Поиск "все в одном"
 
функция window.open() открывает новое окно поиска понятно, а как сделать чтобы в текущем окне выводились результаты поиска. Спасибо за ранее.

Gvozd 17.02.2011 02:36

Цитата:

Сообщение от softer21
то бы добавить например bing то выдает сразу в строке поиска поисковика undefined строку...почему не пойму.

бразуер должен читать ваши мысли?
у вас две формы с одинаковым названием.
какую из них должен использовать браузер, когда вы говорите document.search.query.value ?
document.search - это массив из двух форм.
и у него нету элемента document.search.query
зато у него есть элементы 0 и 1 - формы
Цитата:

Сообщение от softer21
И еще один момент, функция window.open() открывает новое окно поиска понятно, а как сделать чтобы в текущем окне выводились результаты поиска. Спасибо за ранее.

window.location

softer21 17.02.2011 03:50

Спасибо разобрался, только чтото с window.location не получается, жму кнопку "поиск" ........в строке браузера меняется запрос, а ничего нигде не выводиться, что делаю нетак, просто поменял window.open на window.location

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

Gvozd 17.02.2011 04:22

Цитата:

Сообщение от softer21
Спасибо разобрался, только чтото с window.location не получается, жму кнопку "поиск" ........в строке браузера меняется запрос, а ничего нигде не выводиться, что делаю нетак, просто поменял window.open на window.location

потому что после нажатия на кнопку submit отсылается форма(в данном случае сама на себя)
используйте что-ниьудь вместо submit-а, либо же блокируйте отправку формы в ее обработчике события onsubmit
Цитата:

Сообщение от softer21
Как смежный вопрос, как пустить как фоновое окно с результатами?(как в браузере, кликнул на ссылку окно открылось но как фоновая закладка, не отвлекает) если возможно..каким методом.

вбейте в вашу программу window.open background
она сама вам подскажет, что делать)

softer21 17.02.2011 05:06

Спасибо, сделал немного по другому (через фреймы)...все норм.

Gvozd 17.02.2011 05:35

средствами JS невозможно выполнить никаких действий над чужим сайтом.
можно только инициировать его загрузку(во фрейм, или отдельное окно/вкладку)
на этом все. на загруженном сайта вы уже не власны
об этом, кстати написано в FAQ
это не очень-то мило с вашей стороны задавать вопросы, описанные в FAQ раздела

softer21 17.02.2011 06:27

Вы меня не поняли, мы не выполняем никаких действий над чужими сайтами

Gvozd 17.02.2011 06:53

да, нет.
я-то вас как раз относительно понимаю(если не считать тонкостей)

я не говорил о модификации контента
- кстати говоря, раз мы обсуждаем клиентскую сторону, то до конца давайте.
Со своим сайтом вы можете что угодно сделать в пределах браузера.
но, на сервере будет все тот же сайт, что и был.
то есть эти изменения живут только в браузере, и для этого не нужны логин-пароль от админки сайта.
а вот проделать такие "виртуальные" изменения с чужим сайтом нельзя.
потому что это огромная дыра в безопасности.
а не потому что у вас нету пароля от чужого сайта

прочитать информацию с чужого сайта JS, кстати также не может.
то есть показать пользователю фрейм-на здоровье.
но сам он его содержимое не видит

Цитата:

Сообщение от softer21
проводим поиск, получаем результат, складируем (перетягиваем ссылки) во "временную" диаграмму нашего фрейма (страницы) находящейся у нас локально на компьютере

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

о чем, я уже вам и сказал ранее

softer21 17.02.2011 07:44

теперь я понял)) Не подскажите какой вообще тогда язык оптимально применить для манипуляций с чужим контентом (имею ввиду не кражу, а поиск, создание ссылок, построение локального дерева контента, индексирование по ключевым словам и тд)пхп для веба вроде как, но чтото не сильно он мне приглянулся...perl или python подойдет? слышал сильные языки для обработки текстов (насчет веба незнаю). Придется осваивать на ходу видимо=)

Gvozd 17.02.2011 08:00

любой серверный язык подойдет.
для обработки текста все перечисленные вами языки имеют достаточно мощные инструменты

с его помощью вы сможете взять контент с поисковика, проанализировать его, и отобразить как часть вашего сайта, а затем выполнять в баузере с ним любые манипуляции
в простейшем случае код незамысловат(пример PHP):
<?php
echo file_get_contents('http://www.google.com/search?q=' . $_GET['q']);

при вызове этого PHP_скрипта по типу
http://your_site.com/google_proxy.php?q=query_string
вы получите подобие гугла, но уже как часть вашего сайта, с соответсвующими браузерными правами
разумеется скрипт можно усложнить, обрабатывая текст, и преобразуя к единому удобному формату.


Часовой пояс GMT +3, время: 09:24.