不要使用 ajax 重新加载已加载的页面

Don't reload an already loaded page with ajax

我有一个菜单,我想用 ajax

在我的 div 中加载内容

如果页面已加载并且我切换回该页面,则不得重新加载该页面

我的密码是

$(".menulist").on("click", function (e) {
    e.preventDefault();
    var url = $(this).attr("href");

    $.ajax({
        url: url,
        dataType: 'html',
        cache: true,
        success: function (data) {
            $('#result').html(data);
        }
    });
});

有什么解决办法吗 谢谢

var requestCache = {};

$(".menulist").on("click", function (e) {
    e.preventDefault();
    var url = $(this).attr("href");

    if ( requestCache[ url ] ) {
        $('#result').html(requestCache[url]);
    } else {
        $.ajax({
            url: url,
            dataType: 'html',
            cache: true,
            success: function (data) {
                $('#result').html(data);
                requestCache[url] = data;
            }
        });
    }
});