[前端]利用a标签获取url里所需的内容

本文介绍了一个JavaScript函数,用于解析URL的各种组成部分,包括协议、主机、端口、查询参数等,并指出文件路径解析可能存在错误。此外,还提供了一个在iframe中安全获取父页面URL的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

function parseURL(url) {
    var a =  document.createElement('a');
    a.href = url;
    return {
        source: url,
        protocol: a.protocol.replace(':',''),
        host: a.hostname,
        port: a.port,
        query: a.search,
        params: (function(){
            var ret = {},
                seg = a.search.replace(/^?/,'').split('&'),
                len = seg.length, i = 0, s;
            for (;i<len;i++) {
                if (!seg[i]) { continue; }
                s = seg[i].split('=');
                ret[s[0]] = s[1];
            }
            return ret;
        })(),
        file: (a.pathname.match(//([^/?#]+)$/i) || [,''])[1],
        hash: a.hash.replace('#',''),
        path: a.pathname.replace(/^([^/])/,'/$1'),
        relative: (a.href.match(/tps?://[^/]+(.+)/) || [,''])[1],
        segments: a.pathname.replace(/^//,'').split('/')
    };
}

 获取file好像有错

 来源:http://james.padolsey.com/javascript/parsing-urls-with-the-dom/

 

iframe里获取父页面的url

function getParentUrl() { 
					var url = null; 
					if (parent !== window) { 
						try {
							url = parent.location.href; 
						} catch (e) { 
							url = document.referrer; 
						} 
					}
					return url; 
				}

  

转载于:https://www.cnblogs.com/yanyd/p/4729063.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值