//此方法稍加改造,可以直接注入img的src ,也就是一个变量,去获取他的参数。
//此方法return稍加改造,可以return你想要的变量,也可以直接在其中获取变量。
/*
取得目标iframe src所包含的参数
@param iframeId - 目标iframe的id
@return Object 参数名值对,{参数名:参数值,……}
*/
function getIframeParams(iframeId) {
var regexpParam = /\??([\w\d%]+)=([\w\d%]*)&?/g; //分离参数的正则表达式
var targetEle = document.getElementById(iframeId);
var paramMap = null;
if(!!targetEle) {
var url = targetEle.src; //取得iframe的url
var ret;
paramMap = {};//初始化结果集
//开始循环查找url中的参数,并以键值对形式放入结果集
while((ret = regexpParam.exec(url)) != null) {
//ret[1]是参数名,ret[2]是参数值
paramMap[ret[1]] = ret[2];
}
}
return paramMap; //返回结果集
}
<html>
<head>
</head>
<body>
<iframe id="test" src="url?paramA=a¶mB=b"></iframe>
</body>
</html>
//获取参数名值对集合
var paramMap = getIframeParams('test');
//paramMap的结构是这样的:{'paramA':'a', 'paramB':'b'}
alert(paramMap.paramA); //取出paramA的参数值
网友评论