Jquery mobile jQuery Mobile中是否有返回当前路径的方法?

Jquery mobile jQuery Mobile中是否有返回当前路径的方法?,jquery-mobile,Jquery Mobile,我正在jquerymobile中寻找一种方法来获取当前页面的路径,而不管它是直接导航到的还是通过Ajax加载的 因此,对于这两种情况: 以及: 应返回相同的路径: /第1页 我知道这可能是从location.href提取的,但它需要一些额外的代码,所以我想知道是否有一种更简单更健壮的方法。它是location.href和location.hash 还有一个生成的元素,其中包含一个href,您应该会发现它很有用 这里提到: 警告:它说文档需要更新 另外-请阅读一点关于JQM的想法所基于的渐进增

我正在jquerymobile中寻找一种方法来获取当前页面的路径,而不管它是直接导航到的还是通过Ajax加载的

因此,对于这两种情况:

以及:

应返回相同的路径:

/第1页


我知道这可能是从location.href提取的,但它需要一些额外的代码,所以我想知道是否有一种更简单更健壮的方法。

它是
location.href
location.hash

还有一个生成的
元素,其中包含一个
href
,您应该会发现它很有用

这里提到:

警告:它说文档需要更新


另外-请阅读一点关于JQM的想法所基于的
渐进增强
,因为您可能不想处理来自javascript的链接。

如果您正在查找当前路径或页面id,您可以使用:

$.mobile.activePage[0].id

所以我最终发现,你可以通过以下方式实现:

$('.ui-page-active').data('url')
试试这个

$.mobile.activePage[0].baseURI 

$.mobile.activePage如果您需要在pageinit事件之前知道页面url,则无法使用。如果您想随时获取当前页面url,可以使用以下方法:

getCurrentPageUri: function() {
    var currentUrl = $.mobile.path.parseUrl(window.location);
    var result = currentUrl.hash && currentUrl.hash.split("?")[0];
    return (result && result.substring(1)) || currentUrl.pathname;
}

Reoger Ertesvag的解决方案对我不起作用,因为即使在页面更改之后,它也始终具有相同的值。我改用这个,效果很好:

$.mobile.activePage.data("url");
注意,它在pageinit上不起作用,但在pageshow上起作用。

您也可以
$('.ui页面活动').data('absUrl')
来获取活动页面的绝对url。