jQuery mobile在窗口popstate上加载整个页面

Posted

技术标签:

【中文标题】jQuery mobile在窗口popstate上加载整个页面【英文标题】:jQuery mobile loading entire page on window popstate 【发布时间】:2019-06-25 17:43:18 【问题描述】:

我下面有这段代码

window.addEventListener('popstate', function()
    newHref = window.location.href;
    if(pushedState)
        urlSplit = newHref.split('/');
        pageURL = urlSplit[urlSplit.length - 1];
        $('div').html('loading...');
        $.ajax(
            type : 'POST',
            url : pageURL,
            success : function(data)
                $('div').html(data);
            
        )
    
)

此代码运行良好,但如果我将 jQuery 移动库 添加到我的 html 文件中,它会导致 popstate 事件运行 ajax 将整个页面加载到我的 div 中。

我试过这样做

$.mobile.ajaxEnable = false;

但它不起作用。我的 jQuery 移动版本是 1.4.5

【问题讨论】:

【参考方案1】:

根据您向我们展示的内容,我认为您没有使用完整的 jQuery Mobile 功能,因为您所描述的是 jQuery Mobile 应该如何工作。

我还认为您不需要所有 jQuery Mobile 功能。

为什么不只挑选你真正需要的功能来重建 jQuery Mobile 库:http://jquerymobile.com/download-builder/

例如,如果您不选择 init,这将禁用 jQuery Mobile 库的全局初始化。当然,您将能够手动触发页面标记增强。

【讨论】:

以上是关于jQuery mobile在窗口popstate上加载整个页面的主要内容,如果未能解决你的问题,请参考以下文章

雷林鹏分享:jQuery Mobile 事件

jQuery.mobile 弹出窗口在显示后立即隐藏

弹出窗口打开时如何传播 jQuery Mobile 事件?

当我在 jQuery Mobile 中单击弹出窗口上的链接时,如何防止在第一个输入项上自动对焦

我在哪里存储 jQuery Mobile 弹出窗口的 div

jQuery绑定popstate事件未通过