Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Хочу начертить


Автор: Broom 26.6.2016, 18:23
Всем здравствуйте!
Имею страницу.
На ней таблица.
В левой клонке - кнопки, в правой тоже.
Пользователь выбирает щелчком по одной из каждой. Координаты элементов запоминаются глобально.
Теперь должна появиться линия, которая соединяет эти две кнопки. Вот это не выходит.
Если я пишу  в html <canvas id=c width=100% height=100%></canvas>?, то канва устраивается сверху.
Если я пишу <canvas id=c width=100% height=100%><!-- содержимое таблицы--> </canvas>, то содержимое не отображается.
Уважаемые знатоки, старый Broom интересуется, как же всё-таки провести эту чёртову линию?
Учтите, я не программист, а учитель математики, хотя ещё в 1975 году чикал на Фортране, поэтому отвечая, учитывайте мой уровень.
В html, js, php я знаю тлько то, ЧТО МНЕ БЫЛО НУЖНО.
Заранее благодарен.
Старый учитель Михаил Иванов(Broom).

Автор: ksnk 26.6.2016, 21:55
А что там понимать-то?  smile Канвас - это элемент, на котором можно что-то такое нарисовать с помощью специальных функций.
Особенность канваса в том, что рисовать в нем можно в пределах, которые определены в его атрибутах width и height. Если размещать канвас только с помощью стилей, как это принято у обычных элементов, будет странно выглядеть и непонятно рисовать.  smile А еще увеличивать его нужно с серьезным геморроем... 
А в остальном - обычный элемент. Чтобы поместить его ПОД таблицу, нужно поместить таблицу в объемлющий элемент, сделать этот элемент position:relative, сделать таблице position:relative, указать z-индексы, чтобы канвас оказался под таблицей и вставить канвас. Тонкость в том, что размеры таблицы, вообще говоря, неизвестны, их нужно вычислять сразу после размещения на страничке, так что вставку разумно делать в таймауте.
Собственно рисование просто и описано в документации, а вот вычисление габаритов кнопок разумнее сделать на jQuery, просто чтобы поменьше писать самому.
Что-то вроде вот такого...
http://jsbin.com/xobonef/edit?html,css,js,output
Интересно смотреть что получается, если размеры экрана по ширине подвигать.

Если какие буквы и слова непонятны - можно спрашивать... 
 

Автор: Broom 27.6.2016, 11:29
Дорогой ksnk!
Ваше слово "ПОД" внесло полную ясность.
Иногда думаешь: какой же я фонарь!
Спасибо Вам большое.
Я ведь не программист. Просто я хочу, чтобы мой ученик работал дома и посылал результаты на почту мне.
Никакой комерции.
Ещё раз спасибо за толчок в нужном направлении.
Старый учитель Михаил Иванов(Broom).

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)