Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Замена слова при навелении курсора на это слово (https://javascript.ru/forum/misc/4120-zamena-slova-pri-navelenii-kursora-na-ehto-slovo.html)

XPOMOB 25.06.2009 12:41

Замена слова при навелении курсора на это слово
 
Привет.

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

Как вариант применения – борьба со ссылками в комментариях (например). Оставлять ссылки (http://javascript.ru) в виде текста вроде бы не очень правильно, пользователю придется копировать текст ссылки и тд. и тп. А делать нормальную ссылку <a href=… - её будут индексировать роботы, уменьшая тиц сайта. При описанным мною выше подходе пользователь наведя курсор на http-ссылку (т.е. на текст начинающийся с букв http или тому подобных ) через несколько миллисекунд получит нормальную ссылку. Но это как вариант…


вот ещё вариант:
при нажатии на слово, это слово заменяется на "вы нажали на это слово"
а если пользователь долго держит курсор над словом, что бы слово заменялось на "<b>подвигай мышь!</b>"

Riim 25.06.2009 12:44

http://yandex.ru/yandsearch?text=nofollow

XPOMOB 25.06.2009 12:47

Цитата:

Сообщение от Riim (Сообщение 22865)

Нет, это не интересно...

есть ещё noindex... но это тоже не интересно.

И про ссылки я для примера написал...

Riim 25.06.2009 12:54

Цитата:

Сообщение от XPOMOB
можно ли вообще сделать и как это сделать?

Можно. Что именно не получается?
Про ajax можно здесь: http://javascript.ru/tutorial/ajax почитать.

Kolyaj 25.06.2009 12:55

Цитата:

Сообщение от XPOMOB
её будут индексировать роботы, уменьшая тиц сайта.

Аптимизатор блин.

По теме: а проблема в чем?

XPOMOB 25.06.2009 13:42

неполучается примерно следующее
 
Проблема в том, что я очень плохо знаком с Javascript (ну а то нафига мне тогда было тут что-то спрашивать... :) я больше как-то по PHP).

Думаю, что основная моя проблема в том, что я не знаю как сделать так что бы при нажатии на слово, это слово передавалось функции, которая потом обрабатывала полученное и вызывала что-то типа этого
document.body.innerHTML = document.body.innerHTML.replace('AzriMan', 'AndryMan');
(нашел тут на форуме)

правильнее наверное написать document.body.innerHTML = document.body.innerHTML.replace(slovo, funksiy (slovo));

где slovo - это переменная хранящая слово, на которое нажали, а funksiy() - это функция обработки этого слова (в идеале эта функция должна отправить запрос серверу и получить ответ, разобрать этот ответ и вернуть текст для замены)

словом я предпологаю считать любой набор символов от пробела до пробела, поэтому при нажатии на "<p>текст </p>" на обработку наверное должно отправлятся не просто "текст", а "<p>текст".

вот как-то так...

да, вот ещё. наверное нет резона всю страницу обрабатывать, можно как-то сделать обработку слов только внутри <div id="name"> ?

Octane 25.06.2009 13:48

Бредовая идея, оставьте ссылки в покое и займитесь чем-нибудь полезным ;)

XPOMOB 25.06.2009 14:04

Цитата:

Сообщение от Octane (Сообщение 22874)
Бредовая идея, оставьте ссылки в покое и займитесь чем-нибудь полезным ;)

А ссылки не кто и не трогал! Это был ПРИМЕР возможной реализации функциональности. Забудте про ссылки...

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

:)

Octane 25.06.2009 14:16

Ага, значит, что пользователю теперь мышкой не водить по тексту, чтобы спокойно его прочитать, иначе текст начнет дергаться (изменяться)?

XPOMOB 25.06.2009 14:22

Octane - напишите лучше как это сделать!


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