Позиционирование элемента с помощью jquery UI - PullRequest
0 голосов
/ 12 марта 2012

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

              $("<div>")                      
                    .appendTo(window.targetElement)
                    .position(
                            my                 : "top left"
                            at                 : "top left"
                            of                 : window.targetElement
                            offset             : "#{placeholder.left} #{placeholder.top}"
                    )

1 Ответ

1 голос
/ 12 марта 2012

Горизонтальный компонент должен стоять перед вертикальным компонентом в my и at:

$('<div>')
    .appendTo(window.targetElement)
    .position(
        my:     'left top'
        at:     'left top'
        of:     window.targetElement
        offset: "#{placeholder.left} #{placeholder.top}"
    )

Демо: http://jsfiddle.net/ambiguous/WZc4r/

Из тонкой инструкции :

в
Определяет, какая позиция на позиционируемом элементе выравнивается с целевым элементом: «горизонтальная вертикаль» выравнивание. [...]

Акцент мой. Демонстрационный код также ставит горизонтальную часть первой:

$( ".positionable" ).position({
    of: $( "#parent" ),
    my: $( "#my_horizontal" ).val() + " " + $( "#my_vertical" ).val(),
    at: $( "#at_horizontal" ).val() + " " + $( "#at_vertical" ).val(),
    //...

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...