8.х Непонятное поведение работы java script во встроенном браузере 1С

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем sergey4475, 5 мар 2014.

  1. TopicStarter Overlay
    sergey4475
    Offline

    sergey4475

    Регистрация:
    5 мар 2014
    Сообщения:
    19
    Симпатии:
    0
    Баллы:
    1
    Доброго времени суток. Вот пример кода java script
    HTML:
    function load(){var R = Raphael(0 , 0, 480, 240);
        var nowX, nowY
        c = R.rect(22, 22, 20, 20).attr({
                fill: "#F00",
                stroke: "none",
                cursor: "move"
            }),
        start = function () {
            this.ox = this.attr("x");
            this.oy = this.attr("y");
            this.attr({opacity: .5});
            if (this.attr("y") < 1024 &&  this.attr("x") < 1024)
                this.attr({fill: "#F00"});      
        },
        move = function (dx, dy) {
            if (this.attr("y") > 1024 || this.attr("x") > 1024)
                this.attr({x: this.ox + dx, y: this.oy + dy});
            else {
                nowX = Math.min(1024, this.ox + dx);
                nowY = Math.min(1024, this.oy + dy);
                nowX = Math.max(0, nowX);
                nowY = Math.max(0, nowY);          
                this.attr({x: nowX, y: nowY });
                if (this.attr("fill") != "#F00") this.attr({fill: "#F00"});
           }
        },
        up = function () {
            // restoring state
            if (this.attr("y") < 1024 && this.attr("x") < 1024)
                this.attr({fill: "#F00"});
            this.attr({opacity: 1});
        };
        c.drag(move, start, up);};</script></head><body onload='load()'></body>
    Если данный код запускать в обычном браузере. Причем как в старых версиях, так и в новых. То все работает отлично, а именно рисуется квадратик, который можно перемещать на форме...

    но тот же самый код в 1С отображается очень странно. На видео ниже видно. При перемещении остается оригинал объекта, причем он как бы не существует, т.е. события на нем уже не отображаются

    Да и еще, если уже перемещенный квадрат двигать снова, то отрабатывает все хорошо
  2. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
  3. TopicStarter Overlay
    sergey4475
    Offline

    sergey4475

    Регистрация:
    5 мар 2014
    Сообщения:
    19
    Симпатии:
    0
    Баллы:
    1
    Кстати на веб клиенте если заходить через браузер, все хорошо работает...
  4. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    А на самом компьютере IE какой версии установлен?
  5. TopicStarter Overlay
    sergey4475
    Offline

    sergey4475

    Регистрация:
    5 мар 2014
    Сообщения:
    19
    Симпатии:
    0
    Баллы:
    1
    На самом компе 11 версия
  6. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Так, ie11 под рукой нету чтобы посмотреть. Там же есть типа опции "режим браузера" -> просмотр в режиме IE7. Если запустить в таком режиме веб-клиент - то будет работать или будет как с тонким клиентом?
  7. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    IE можно заставить работать движком от нужной версии браузера, добавив в свой html
    HTML:
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; IE=EmulateIE9">
    11 версия поддерживает движки с версии 7, а также Quirks, который, по факту - 5.5
  8. TopicStarter Overlay
    sergey4475
    Offline

    sergey4475

    Регистрация:
    5 мар 2014
    Сообщения:
    19
    Симпатии:
    0
    Баллы:
    1
    Ну это не влияет. Но интересная особенность. Если полученный код сохранить в html файл и просто его открыть в клиенте 1С, то все хорошо работает, но вот именно в данной форме не хочет
  9. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    не, в клиенте у вас не будет возможности поменять движок :)
    там - слегка подпиленный IE7
    вернее даже не IE7, а текущий браузер в режиме совместимости с IE7, что добавляет своих проблем
    ну и вот еще, может дельное что найдете
  10. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    sergey4475, не знаю, прокатит ли с 1С. Такую фишку попробуйте (самому интересно поймет ли 1С это):

    В реестре. Ключ "HKLM\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION", добавьте туда ключ "1cv8c.exe" со значением DWORD 9000 (или 9999) (в десятичной системе).
    Единственно не помню комп надо перезагружать или нет. Перезагрузите, и попробуйте.

Поделиться этой страницей