JQuery Mobile文档准备替代

时间:2011-07-25 03:39:15

标签: javascript jquery html mobile jquery-mobile

我花了好几个小时试图调试我创建的jquery移动页面,最后让它运行起来。我把脚本放在data-role =“page”class =“page-map4”div中。我想知道为什么会这样,我宁愿这不是我的魔力。如果我直接访问页面,这无关紧要,只有当我从另一个JQuery Mobile页面访问它时。

$('.page-map4').live("pageshow", function(){
        if (navigator.geolocation) {
              navigator.geolocation.getCurrentPosition(success, error);
        } else {
              error('Geolocation not supported');
        }
});

问题:为什么上面的脚本必须在页面数据角色div中才能从另一个JQuery Mobile页面导航时正常工作?

2 个答案:

答案 0 :(得分:2)

对于页面事件,我只是在我的jQuery代码中执行此操作。在绑定到<script>全局的任何文档之后,这位于页面的<head>元素中的$.mobile标记集中:

$('#YOUR_PAGE_ID').live('pageshow',function(event, ui){
  yourGeoCode();
});

答案 1 :(得分:1)

您应该使用pageinit事件,请参阅此帖子“Using jQuery Mobile – Remember to use pageinit() and not $(document).ready()”以获取更多信息