我正在尝试创建一个元素并将其放在第二个元素之上。我想要的是将新元素放置在主元素上从左上角偏移的特定位置。当我运行下面的代码(Coffeescript)时,它会将div或多或少放在中间,但有点吼叫。它应该在左上角,我知道我一定做错了但我不知道是什么/
$("<div>")
.appendTo(window.targetElement)
.position(
my : "top left"
at : "top left"
of : window.targetElement
offset : "#{placeholder.left} #{placeholder.top}"
)
答案 0 :(得分:1)
水平组件必须位于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/
来自fine manual:
是在强>
定义要定位的元素上与目标元素对齐的位置:“水平垂直”对齐。 [...]
强调我的。演示代码还将水平部分放在第一位:
$( ".positionable" ).position({
of: $( "#parent" ),
my: $( "#my_horizontal" ).val() + " " + $( "#my_vertical" ).val(),
at: $( "#at_horizontal" ).val() + " " + $( "#at_vertical" ).val(),
//...
我猜这个订单很重要,因为他们希望my
和at
匹配offset
,但offset
只是两个数字。