Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 24.10.2016, 12:33
Профессор
Отправить личное сообщение для clecar Посмотреть профиль Найти все сообщения от clecar
 
Регистрация: 11.02.2015
Сообщений: 254

Нет смысла, без программы он всё равно не запустится, пояснения в коде чисто для меня, раскрашивал в разные цвета, чтобы видно было в каких направлениях краска выливается за черту и как идёт процесс. Этот код выполняет залив с лейки не закрашенных участков. Работу посмотрите по моим ссылкам. Кликом по изображению кисточки переключение в режим заливки. Там я не указал и посетители пользуются в основном кисточкой.
Ответить с цитированием
  #12 (permalink)  
Старый 24.10.2016, 13:57
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

clecar, избавиться от кнопки:
- или так
<script>var img=new Image;img.onload=function(){o(this)};img.src="imag e.png";function o(b){var a=document.getElementById("peRVI").getContext("2d" );a.globalAlpha=1;a.drawImage(b,0,0,400,400);a.str okeRect(0,0,400,400)}</script>
- или так
<output id="list"><img class="po" src="image.png" id="k" onload="o(this)"></output><script>function o(b){var a=document.getElementById("peRVI").getContext("2d" );a.globalAlpha=1;a.drawImage(b,0,0,400,400);a.str okeRect(0,0,400,400)};</script>
Ответить с цитированием
  #13 (permalink)  
Старый 24.10.2016, 15:55
Аватар для Опан
Кандидат Javascript-наук
Отправить личное сообщение для Опан Посмотреть профиль Найти все сообщения от Опан
 
Регистрация: 15.03.2013
Сообщений: 100

Rise,
у Вас опечатка: a.str okeRect(0, 0, 400, 400) - пробел из ниоткуда
Ответить с цитированием
  #14 (permalink)  
Старый 24.10.2016, 18:24
Профессор
Отправить личное сообщение для clecar Посмотреть профиль Найти все сообщения от clecar
 
Регистрация: 11.02.2015
Сообщений: 254

Опробовал оба варианта, картинка конечно вставляется, если убрать a.str okeRect(0, 0, 400, 400). Но не то что лейка, капризничает даже кисточка.
Ответить с цитированием
  #15 (permalink)  
Старый 24.10.2016, 18:44
Профессор
Отправить личное сообщение для clecar Посмотреть профиль Найти все сообщения от clecar
 
Регистрация: 11.02.2015
Сообщений: 254

На сайте у меня работает по этому коду.
<script>
document.ondragstart = function(){return false;}
document.body.onselectstart = function(){return false;}
var pri = document.getElementById("pri");
var pra= pri.getContext("2d");
var pervii = document.getElementById("peRVI");
var raskras= pervii.getContext("2d");
pervii.addEventListener('mousemove', paintCanvas, false);
img = document.createElement('img');
img.onload = function (){ pra.drawImage(img, 0, 0);}
pra.clearRect(0,0,400, 400);
img.src ="risyem/kloyn.png";
</script>
Ответить с цитированием
  #16 (permalink)  
Старый 24.10.2016, 19:01
Профессор
Отправить личное сообщение для clecar Посмотреть профиль Найти все сообщения от clecar
 
Регистрация: 11.02.2015
Сообщений: 254

Ваш первый вариант работает аналогично моему. На сервере без проблем, локально на компьютере пиксели не обрабатываются.
Ответить с цитированием
  #17 (permalink)  
Старый 24.10.2016, 19:11
Профессор
Отправить личное сообщение для clecar Посмотреть профиль Найти все сообщения от clecar
 
Регистрация: 11.02.2015
Сообщений: 254

Второй себя ведёт точно так же. После чистки cookei на компьютере. Заливку без кнопки или без сервера выполнить невозможно.
Ответить с цитированием
  #18 (permalink)  
Старый 24.10.2016, 19:31
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,493

Это зависит от браузера. Firefox позволяет получать информацию по пикселям произвольного локального изображения, если сам файл тоже открыт локально. Chrome запрещает, потому что не безопасно: мало ли куда полезет случайно локально открытый файлик.
Каждая позиция по своему оправдана.

Если вы пишете то, что будет использовано в интернете - используйте для тестирования локальный сервер. Слишком многое разнится между запуском "из интернета" и просто запуском файла, целое поле грабель по которым можно пройтись.
__________________
29375, 35
Ответить с цитированием
  #19 (permalink)  
Старый 24.10.2016, 20:18
Профессор
Отправить личное сообщение для clecar Посмотреть профиль Найти все сообщения от clecar
 
Регистрация: 11.02.2015
Сообщений: 254

Спасибо, так оно вероятно и есть. У меня Chrome. Firefox попробую установить.
Ответить с цитированием
  #20 (permalink)  
Старый 24.10.2016, 22:05
Профессор
Отправить личное сообщение для clecar Посмотреть профиль Найти все сообщения от clecar
 
Регистрация: 11.02.2015
Сообщений: 254

Aetae,
Ваша правота подтвердилась, Firefox не удалось установить. Но в поисках причины удалил менеджер браузеров. У меня были установлены браузеры АМИГО, ХРОМ, ЯНДЕКС, ОПЕРА. Во всех программа раскраски работала одинаково, локально заливка с лейки не срабатывала, остальное было нормально. Теперь по прежнему работает только ЯНДЕКС. В ОПЕРЕ лейка заработала, но не переключается курсор и не срабатывает событие onmouseup оно так же перестало работать в АМИГО и ХРОМ, но в них по прежнему лейка не работает. Ваш совет удалить все, почистить ВИНД, и по новой установить браузеры?

Последний раз редактировалось clecar, 24.10.2016 в 22:08.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переманную как условие в if блок xas Общие вопросы Javascript 3 02.02.2016 21:17
Как объединить канвас mervin Элементы интерфейса 12 12.08.2015 16:45
initComponent: Как получить данные родителя и как получить store для вызова load()? Пролетарий ExtJS 76 04.07.2015 09:22
коммнты фб и как обмануть iframe torsar Оффтопик 9 29.06.2015 11:02
Как сделать что бы картинки с другого url отображались как свои zlodey Серверные языки и технологии 1 04.05.2015 21:30