加载页面后,div 的位置为 0,0。
但它的位置正确。如何在一开始就获得正确的位置?我为JFiddle做了一个例子,它显示了这个问题。单击按钮后,位置值是正确的。
<div data-role="page" id="homepage">
<div data-role="header">
<h1>Home</h1>
</div><!-- /header -->
<div data-role="content" id="homecontent">
<p><a href="#page1">Page1</a></p>
</div><!-- /content -->
<div data-role="footer">
<h4> </h4>
</div><!-- /footer -->
</div><!-- /page -->
<div data-role="page" id="page1">
<div data-role="header">
<h1>Page1</h1>
</div><!-- /header -->
<div data-role="content" id="page1content">
</div><!-- /content -->
<div data-role="footer">
<h4> </h4>
</div><!-- /footer -->
</div><!-- /page -->
====
jQuery(document).ready(function(e) {
initThis();
});
function initThis() {
$('#page1content').append('<div id="isodivi"></div>').trigger("create");
$('#isodivi').height(100);
$('#isodivi').width(600);
$('#isodivi').css( "background-color", "lightgreen" );
var test = $('#isodivi').position().left +" "+ $('#isodivi').position().top;
$('#isodivi').html(test);
$('#isodivi').append('<a href="#" data-role="button" id="button1">Click</a>').trigger("create");
}
$('#button1').click(function() {
var test = $('#isodivi').position().left +" "+ $('#isodivi').position().top;
$('#isodivi').html(test);
});