Я использовал элемент canvas для отображения карты с исправлениями, которые окрашены в соответствии со значениями, полученными из запроса MySQL, и записываются в массив javascript. Он отлично работает на моих двух компьютерах, в Firefox 4, IE 9 и Safari. Но когда я делал демо в школе, с IE 8 (может быть, это было бы проблемой) и Firefox 3.6 (должен работать), холст не был виден. Я не могу видеть, как он может даже быть отключен! Что делают ИТ-ребята в школе, и как я могу проверить ее и нарисовать обычную карту изображений?элемент холста, кажется, отключен
ответ
IE8 не поддерживает холст. Вы можете использовать excanvas для подражания.
Во-вторых, IIRC, браузеры не обязаны устанавливать ширину и высоту холста для любого значения. Вы можете попытаться установить атрибуты width
и height
.
UPD: Будет хорошо, если вы предоставите фрагмент своей страницы. Прежде чем вы это сделаете, некоторые идеи о том, как уменьшить проблему.
Убедитесь, что ваша страница доктайп устанавливается в
<!doctype html>
.Убедитесь, что никаких сообщений о
canvas
не будучи не поддерживается (то есть текст поместить между<canvas>
и</canvas>
) отображаются (это не должно произойти с Firefox 3.6, но тем не менее).style='border:solid;'
для вашего элемента холста. Проверьте, берется ли граница в ожидаемой позиции.Enclose
canvas
вdiv
элемент и убедитесь, что отображается в ожидаемом местоположении (например, путем установкиstyle='border:solid;'
для него, а).
Если отображается граница для холста и/или оберточного элемента, но нет рисунка, тогда есть некоторая ошибка с кодом рисования. Если это не так, есть проблема с позиционированием элементов (например, CSS пошла не так) или загрузкой документа как таковой.
UPD: Я запустил сайт с включенным Firebug, и он показал исключение при вызове drawImage
.
img.src = 'images/snap9.jpg';
ctx.drawImage(img,0,0); // HERE!
Но только для первой загрузки страницы в сеансе браузера.
Причина в том, что, когда вы установили src
в адрес изображения, он не загружается немедленно и не может быть доведено до этого момента. Таким образом, выбрасывается, а остальная часть кода не выполняется.
Вы должны установить обработчик onload
для изображений (см. here) и сделать остальную часть чертежа в этом обработчике.
Сообщите мне, если это поможет.
- 1. Как решить «Selenium StaleElementReferenceException, элемент, кажется, отключен от DOM. «?
- 2. PHP start_session, кажется, отключен css
- 3. Элемент не отключен
- 4. Как сделать элемент отключен
- 5. JavaScript, кажется, в Вашем браузере отключен - Magento
- 6. JMeter: JavaScript, кажется, в Вашем браузере отключен
- 7. Элемент размытия холста div
- 8. Динамически нарисован элемент холста
- 9. 'onmouseover' элемент внутри холста?
- 10. Медленный элемент холста
- 11. Как стилизовать элемент холста?
- 12. Элемент реагирующего холста
- 13. Элемент холста - вращение
- 14. html5 элемент холста исчезает
- 15. Как напечатать элемент холста?
- 16. Элемент холста: Изображение щелкнуло
- 17. Элемент холста не обновляется
- 18. Элемент документа Onclick отключен навсегда?
- 19. HTML5 - Элемент холста (выравнивание страницы)
- 20. Элемент Bootstrap 3 отключен в контекстном меню?
- 21. Отражая элемент canvas на элемент удаленного холста
- 22. Как преобразовать элемент HTML в элемент холста?
- 23. Преобразовать HTML IMG элемент холста
- 24. Элемент холста, размер обводного круга
- 25. Элемент/форма холста Resize canvas
- 26. Элемент холста, зажатый в IE10
- 27. Элемент холста, покрывающий весь экран?
- 28. html5 - элемент холста - Несколько слоев
- 29. Как очистить определенный элемент холста?
- 30. Hammer.js - Проведите в элемент холста?
Спасибо за ответ. Меня не интересует IE - мои пользователи используют Firefox, и холст там тоже не работает. Я устанавливаю ширину и высоту в html, который создает элемент (а не в javascript). –
Спасибо, старший_george. Я помещаю текст внутри холста, и он не отображается. Я получил ответ от ИТ-безопасности в колледже, и он говорит, что они ничего не делают, чтобы отключить материал HTML 5. Сайт: –
Ссылка на сайт не отображается. Попытайтесь повторить это, пожалуйста. –