2013-12-18 3 views
1

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

chart.renderer.image('img.png', left, top, 30, 30).add(); 

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

Можно ли перемещать элемент с помощью какого-либо javascript или мне нужно его удалить и сделать вышеуказанный вызов снова с новой позицией?

+0

есть ли способ использовать следующее в anguar 4? –

ответ

1

В итоге я сохранил ссылку на исходную ширину диаграммы и изображения. Затем при изменении размера я перемещаю изображение по смещению двух ширины -

var img, originalWidth; 

function chartLoad(chart) { 
    var top = 100, left = 100; 

    originalWidth = chart.chartWidth; 
    img = chart.renderer.image('img.png', left, top, 30, 30).add(); 
} 

function chartResize(e) { 
    var offset = e.target.chartWidth - originalWidth; 
    img.translate(offset, 0); 
} 
4

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

+3

Что-то вроде этого: http://jsfiddle.net/4Zhkj/ – Mark

+0

Вот что я делал. Я думал, что может быть способ переместить его так же, как вы установили top/left на позиционированный элемент html вместо того, чтобы удалять его из DOM и добавлять нового. – mld

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