JS控制静态页面传递参数并获取参数应用


Posted in Javascript onAugust 10, 2016

在项目中遇到这也一个问题:

有a.html和b.html。

1.a页面已经打开,b页面尚未打开,我希望在a页面设置好一些列参数,比如背景色,宽度等参数,传递给b页面,好让b页面在打开就能应用。

2.a页面已经打开,b页面无论是否打开。在a页面需要获取到b页面的一些元素甚至变量,以便于应用到a页面。

注意:不涉及跨域问题。

想了很久,终于想到了解决方案。

第一个问题,我们可以利用html页面锚点的特性,将参数通过url传递给b页面

这是a页面代码:

<button>跳转设置</button>
<script>
var btn = document.querySelector('button');
console.log(window);
btn.addEventListener('click', function(){
window.location = 'ci.html#bgc=#369?wd=500'
})
</script>

由代码可以知道,点击按钮跳转页面,跳转的url后面多了一系列参数,这个并不会影响跳转的地址,当b页面打开后,可以获取location截取字符串获得变量及变量值,再进行应用。

这是b页面代码:

<div></div>
<script>
var div = document.querySelector('div');
var bl = window.location.hash.slice(1).split('?');
if(bl.length >= 1){
for(var i = 0; i < bl.length; i += 1){
switch (bl[i].split('=')[0]) {
case 'bgc':
document.body.style.background = bl[i].split('=')[1];
break;
case 'wd':
div.style.width = bl[i].split('=')[1] + 'px';
break;
default:
null;
break;
}
} 
}
</script>

通过截取字符串取得url传递过来的变量应用。成功!

第二个问题,我想的是通过iframe来达到目的,这只是一个障眼法。

在a页面动态创建一个iframe,并设置src值为b页面,display为none。再通过iframe的contentDocument属性获取返回的iframe的文档。

在文档内获取到所需要的元素并应用。

源码:

<span>11111111111</span>
<script>
var fram = document.createElement('iframe');
fram.src = 'http://www.vip.com/kongzhi/fram2.html';
fram.style.display = 'none';
document.body.appendChild(fram);
fram.onload = function(){
var doc = fram.contentDocument || fram.contentWindow.document;
var p = doc.querySelector('p');
document.body.appendChild(p);
}
</script>

以上所述是小编给大家介绍的JS控制静态页面传递参数并获取参数应用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript loadScript异步加载脚本示例讲解
Nov 14 Javascript
jQuery对象和DOM对象之间相互转换的方法介绍
Feb 28 Javascript
javascript实现简单的省市区三级联动
May 14 Javascript
JQuery查找DOM节点的方法
Jun 11 Javascript
js仿百度登录页实现拖动窗口效果
Mar 11 Javascript
jquery自动补齐功能插件flexselect用法示例
Aug 06 Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
Feb 10 Javascript
微信小程序列表渲染功能之列表下拉刷新及上拉加载的实现方法分析
Nov 27 Javascript
vue中使用echarts制作圆环图的实例代码
Jul 27 Javascript
jQuery实现适用于移动端的跑马灯抽奖特效示例
Jan 18 jQuery
node后端服务保活的实现
Nov 10 Javascript
Node.js API详解之 dns模块用法实例分析
May 15 Javascript
基于JavaScript实现树形下拉框
Aug 10 #Javascript
关于原生js中bind函数的简单实现
Aug 10 #Javascript
Mvc提交表单的四种方法全程详解
Aug 10 #Javascript
mvc中form表单提交的三种方式(推荐)
Aug 10 #Javascript
浅谈JS运算符&amp;&amp;和|| 及其优先级
Aug 10 #Javascript
浅谈jQuery中的checkbox问题
Aug 10 #Javascript
jQuery实现将div中滚动条滚动到指定位置的方法
Aug 10 #Javascript
You might like
一个MYSQL操作类
2006/11/16 PHP
php中处理模拟rewrite 效果
2006/12/09 PHP
PHP strripos函数用法总结
2019/02/11 PHP
php设计模式之状态模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
prototype1.4中文手册
2006/09/22 Javascript
JavaScript 提升运行速度之循环篇 译文
2009/08/15 Javascript
jQuery easyui datagrid动态查询数据实例讲解
2013/02/26 Javascript
Lua表达式和控制结构学习笔记
2014/12/15 Javascript
javascript比较两个日期相差天数的方法
2015/07/24 Javascript
高性能JavaScript 重排与重绘(2)
2015/08/11 Javascript
js获取腾讯视频ID的方法
2016/10/03 Javascript
12306 刷票脚本及稳固刷票脚本(防挂)
2017/01/04 Javascript
微信小程序实现简易table表格
2020/06/19 Javascript
Vue Router history模式的配置方法及其原理
2019/05/30 Javascript
Ajax请求时无法重定向的问题解决代码详解
2019/06/21 Javascript
vuex存储token示例
2019/11/11 Javascript
小程序websocket心跳库(websocket-heartbeat-miniprogram)
2020/02/23 Javascript
javascript实现一款好看的秒表计时器
2020/09/05 Javascript
python 含子图的gif生成时内存溢出的方法
2019/07/07 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
基于Python中的yield表达式介绍
2019/11/19 Python
详解基于python的图像Gabor变换及特征提取
2020/10/26 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
萨克斯第五大道的折扣店:Saks Fifth Avenue OFF 5TH
2016/08/25 全球购物
水果花束:Fruit Bouquets
2017/12/20 全球购物
L’urv官网:精品女性运动服品牌
2019/07/07 全球购物
写求职信要注意什么问题
2014/04/12 职场文书
感恩的演讲稿
2014/05/06 职场文书
创建文明城市标语
2014/06/16 职场文书
在职证明书范本(2014新版)
2014/09/25 职场文书
教师学习八项规定六项禁令思想汇报
2014/09/27 职场文书
手机被没收的检讨书
2014/10/04 职场文书
茶楼服务员岗位职责
2015/02/09 职场文书
2015年客房服务员工作总结
2015/05/15 职场文书
2015年度优秀员工获奖感言
2015/07/31 职场文书
导游词之西湖雷峰塔
2019/09/18 职场文书