百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>JS教程> window.location.origin属性的兼容问题
分享文章到:

window.location.origin属性的兼容问题

发布时间:01/15 来源: 浏览: 关键词:
window.location.origin属性在浏览器上兼容性好像有一些问题了在这里我们整理了一篇关于window.location.origin属性的兼容问题分析教程,具体如下。

项目开发时一直使用Chrome浏览器作为开发支持,因为它提供的debug功能非常很实用。能满足Web前端部分开发需求。

由于项目的分页界面都是采用ajax实现的页面无刷新,这个设计会有一个问题就是当翻页后,比如说第2页,当点击浏览器刷新按钮,当前页就会跳转到第一页去。

那么这个时候,需要解决这个页码问题需要用到window.location.hash (也就是浏览器地址栏的URL#main) 这个数据。

例如:

第一页

/article/list.php#page_1

第二页

/article/list.php#page_2

这么设计后,页面刷新要保持页码,那么就需要使用javascript获取window.locaiton.hash属性。来判断页码后渲染数据。

这里贴上部分实现代码:

 代码如下


$(function(JQuery){
    JQuery.api = {};

    // 分页查询
    JQuery.api.findPage = function(url, params, func){
        var page = window.location.hash;
        if(page){// 有页码
            window.location.hash = "#p" + params.pageNo;
        }else{// 页码默认第一页
            window.location.href = getUrlPath() + "#p"+params.pageNo;
        }
        $.ajax({
            url: url,
            dataType:"json",
            data: params,
            success: func,
            error:function(e){
                console.log(e);
            }
        });
    };

    // 获取Hash页码
    JQuery.api.getHashPage = function(){
        var hash = window.location.hash;
        if(hash){
            var pageNo = parseInt(hash.substring(2, hash.length));
            if(!isNaN(pageNo)){
                return  pageNo;
            };
        }
        return 1;
    };


    // 获取URL地址
    function getUrlPath(){
        // 这部分代码就是处理标题兼容问题的。
        // 由于在Chrome window.location.origin 属性是支持的,但是在IE11不支持,会导致无法正常翻页。
        var loc = window.location;
        var portStr = "";
        if(loc.port != 80){ portStr = ":"+loc.port; }
        return loc.protocol + "//" +loc.hostname + portStr + loc.pathname;
    }


});

结束语
此问题在项目开发中看开发者使用什么方式进行开发,如果采用服务器方式分页也就不存在这个问题了

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有8人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板