2014-01-09 2 views
0

Я хотел бы найти способ проверить, поддерживает ли браузер три пользователя.js. Я видел, что вы можете использовать detector.js предоставляемые three.js с этой строки кода, чтобы проверить, следует ли использовать WebGL или холст:проверить, поддерживается ли Three.js

renderer = Detector.webgl? new THREE.WebGLRenderer(): new THREE.CanvasRenderer(); 

Это часть работы не вся она. CanvasRenderer не работает со всеми другими браузерами. В зависимости от того, что вы хотите сделать. В моем случае я хочу сделать простой вращающийся куб, как пример canvas, предоставленный тэгом. Js), он не работает на IE9, даже если IE9 должен поддерживать холст (http://caniuse.com/canvas).

Я бы хотел проверить, поддерживает ли браузер код примера или нет. Я не хочу проверять каждый браузер один за другим и посмотреть, смогут ли они его поддерживать, а затем показать что-то еще, если они этого не сделают.

Любая идея приветствуется. Заранее спасибо.

ответ

0

Вы можете сделать additionnal тест, чтобы проверить, если поддержка браузера Canvas, это в Detector.js (Detector.canvas):

!! window.CanvasRenderingContext2D 

Но проблема с IE9 (и может быть 10, я не» t know) не из-за этого, это из-за последовательности загрузки, которая является асинхронной. Вам нужно использовать Require.js или просто something like that загрузить три.min.js и другие скрипты, а затем он будет работать. Вы также можете проверить iewegl examples, чтобы посмотреть, как они это делают.

+0

Спасибо за ваш ответ. Я не заметил Detector.canvas, спасибо, чтобы указать мне. Я не знал о Require.js или что-то похожее, поэтому я попытался использовать его, но, похоже, он не работает лучше на IE9. Я положил пример онлайн, если вы хотите проверить его: http: //mywholepicture.com/test/detector.html – aschaeffer

+0

Как вы писали, я использовал эту строку, чтобы проверить, может ли браузер отображать куб: 'if (! Detector.webgl &&! Detector.canvas) ' – aschaeffer

+0

[Я бы попробовал что-то подобное] (http://jsfiddle.net/jeum/t52p5/), но я не могу его протестировать. Я обновил IE, но было решение для IE9 (я использовал свою вторую ссылку). В противном случае ваше сообщение также может быть «Пожалуйста, усовершенствуйте свой браузер ...» В IE11 вам не нужно менять обычный скрипт, и вы получите webgl. – jeum

Смежные вопросы