Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Проблема при получении данных из input на JavaScript
Покинул форум
Сообщений всего: 128
Дата рег-ции: Июль 2011 Откуда: Киев
Помог: 1 раз(а)
[+]
Есть поле input в которое я ввожу текст. Справа от поля input картинка, на определенных координатах которой собственно и появляется вводимый текст. Пишу на HTML5 используя элемент Canvas:
Вводимый текст отображается в нужных координатах на картинке, но есть проблема... Если удалять текст из input'a - выводимый текст на картинке остается и вообще если удалить текст и вписано заново - новый текст накладывается на старый. Как это исправить?
armancho7777777
Отправлено: 08 Августа, 2012 - 15:42:20
Активный участник
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Помог: 221 раз(а)
Не по теме, но...
почему у Вас loader() повешен на onkeyup самого body ?
Почему не на поле ввода ?
Striker
Отправлено: 08 Августа, 2012 - 15:51:44
Частый гость
Покинул форум
Сообщений всего: 128
Дата рег-ции: Июль 2011 Откуда: Киев
Помог: 1 раз(а)
[+]
Цитата:
почему у Вас loader() повешен на onkeyup самого body ?
Почему не на поле ввода ?
На самом деле на странице много полей. Просто вырезал из кода только основную часть чтоб не загромождать пост. Ибо если выложу тут много кода - многим будет лень все просматривать, потому привел пример с одним инпутом.
Суть в том, что Вы рисуете текст на холсте, и при удалении части строки в поле Вам надо стирать её с холста.
Мой пример надо доработать:
надо получать длину и высоту строки в px. и ширину удаляемого символа.
Возможно кто либо на форуме предложет лучшее решения.
Просто у меня нет опыта работы с canvas.
Ну и google в помощь ))
Покинул форум
Сообщений всего: 128
Дата рег-ции: Июль 2011 Откуда: Киев
Помог: 1 раз(а)
[+]
armancho7777777
Уже где-то близко... Выделенный бекспейсом символ становится невидимый, но опять таки появляется после очередного нажатия клавиши backspace.
Вообще может как-то дописать функцию loader(), которая после каждого отпускания клавиши будет обновлять значение поля input?
//Updated
Ой, не значение поля input, а значение переменной result
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Помог: 221 раз(а)
Striker пишет:
Вообще может как-то дописать функцию loader(), которая после каждого отпускания клавиши будет обновлять значение поля input?
Блин, ну конечно ))
Как-то сразу не догадался ))
Только не значение поля обновлять, а надо стирать всё
и перерисовывать каждый раз при событии onkeyup ))
Покинул форум
Сообщений всего: 128
Дата рег-ции: Июль 2011 Откуда: Киев
Помог: 1 раз(а)
[+]
armancho7777777
Красава! Спасибо большое! Жаль не могу репу повысить, мало постов у меня)
armancho7777777
Отправлено: 08 Августа, 2012 - 17:38:14
Активный участник
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Помог: 221 раз(а)
Да не за что
Striker
Отправлено: 08 Августа, 2012 - 17:40:41
Частый гость
Покинул форум
Сообщений всего: 128
Дата рег-ции: Июль 2011 Откуда: Киев
Помог: 1 раз(а)
[+]
Ага... теперь появилась друга проблема. Ввожу данные в одно поле - все ок, ввожу в другое поле - информация на картинке из первого поля удаляется и отображается только то что ввел во второе поле.
Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008 Откуда: Москваль
Помог: 52 раз(а)
Я, может, глупость сморожу, но почему нельзя сделать canvas (читай как img) и div поверх него в нужном месте (в вашем случае несколько дивов)? Содержимое дива менять много проще, имхо
armancho7777777
Отправлено: 08 Августа, 2012 - 18:57:46
Активный участник
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Помог: 221 раз(а)
Stierus, я тоже думал предложить это, и согласен, так проще ))
Но, спортивный интерес ))
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Помог: 221 раз(а)
Сам бы я сделал для себя как предложили Вы, Stierus, но без canvas + с возможностью перетаскивания текстовых блоков для позиционирования + кнопка для выравнивания текста по левому, по правому, по центру.Ну и по клику кнопки "сохранить" отправлять аяксом все нужные данные в обработчик. Ну а там уже GD
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.