无法使用jQuery移动

问题描述:

演示页用于测试何时返回元件的宽度():http://jsfiddle.net/rCKzs/无法使用jQuery移动

<script type="text/javascript"> 
    $(document).ready(function() { 
     alert($("#test").width());   
    }); 
</script> 

.. 

<div id="test">content</div> 

如果删除了jQuery移动,那么它是好的,否则返回0。

不要JQM使用的document.ready:

重要须知:pageInit(),而不是$(文件)。就绪()

你的jQuery学习的第一件事就是调用代码 $(document).ready()函数内部,所以一切都会立即执行作为 DOM加载。但是,在jQuery Mobile中,Ajax用于在导航时将每个页面的 内容加载到DOM中,DOM准备好的 处理程序仅对第一页执行。要在加载和创建新页面时执行代码,可以绑定到pageinit事件。 此事件在本页底部详细解释。

而且JQM只支持的jQuery 1.6.4

结合pageinit时,我会用活()这样的

$('div').live('pageshow',function(event, ui) { 
    alert($("#test").width()); 
}); 
+0

对于我的具体问题我的div仍然给出0的高度,但绑定到'.live('pageshow',...'(如上所示)效果很好。 – Ojen 2014-12-26 18:07:14