Найти реестр Studio управления SQL Server 2005 года

Я только что столкнулся с той же проблемой сегодня - не на мобильном телефоне, а с небольшим размером окна при загрузке первой страницы. Когда страница загружается, диаграмма скрывается, затем после некоторого выбора на странице мы создаем диаграмму. Мы установили минимальную ширину и максимальную ширину для контейнера в CSS, но не ширину.

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

Так как ширина не установлена, клонированный div пытается занять как можно больше места - до максимальной ширины, которую я установил. Элементы SVG создаются с использованием этой ширины, но добавляются в контейнер контейнера диаграммы, который в настоящее время меньше (в зависимости от размера экрана). В результате диаграмма выходит за границы контейнера.

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

Я справился с этой проблемой начальной загрузки, переопределив функцию Highcharts cloneRenderTo, которая клонирует div для получения измерений:

(function (H) {
    // encapsulated variables
    var ABSOLUTE = 'absolute';

    /**
    * override cloneRenderTo to get the first chart display to fit in a smaller container based on the viewport size
    */
    H.Chart.prototype.cloneRenderTo = function (revert) {
        var clone = this.renderToClone,
            container = this.container;

        // Destroy the clone and bring the container back to the real renderTo div
        if (revert) {
            if (clone) {
                this.renderTo.appendChild(container);
                H.discardElement(clone);
                delete this.renderToClone;
            }

            // Set up the clone
        } else {
            if (container && container.parentNode === this.renderTo) {
                this.renderTo.removeChild(container); // do not clone this
            }
            this.renderToClone = clone = this.renderTo.cloneNode(0);
            H.css(clone, {
                position: ABSOLUTE,
                top: '-9999px',
                display: 'block' // #833
            });
            if (clone.style.setProperty) { // #2631
                clone.style.setProperty('display', 'block', 'important');
            }
            doc.body.appendChild(clone);

            //SA: constrain cloned element to width of parent element
            if (clone.clientWidth > this.renderTo.parentElement.clientWidth){
                clone.style.width = '' + this.renderTo.parentElement.clientWidth + 'px';
            }

            if (container) {
                clone.appendChild(container);
            }
        }
    }

})(Highcharts);

Я сохранил эту функцию в отдельном файле сценария, который загружается после Highchart Загрузился скрипт .js.

5
задан KM. 2 June 2009 в 15:08
поделиться

1 ответ

SQL 2005 SSMS хранит свои настройки в

HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\90\Tools\Shell

SQL 2008 SSMS сохраняет свои настройки в

HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\100\Tools\Shell
10
ответ дан 13 December 2019 в 22:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: