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中判断一个值是否在数组中并没有直接使用
Dec 17 Javascript
往光标所在位置插入值的js代码
Sep 22 Javascript
jQuery实现长按按钮触发事件的方法
Feb 02 Javascript
JS版元素周期表实现方法
Aug 05 Javascript
jquery+ajax实现直接提交表单实例分析
Jun 17 Javascript
微信小程序 PHP后端form表单提交实例详解
Jan 12 Javascript
jQuery实现注册会员时密码强度提示信息功能示例
Sep 05 jQuery
vue+springboot前后端分离实现单点登录跨域问题解决方法
Jan 30 Javascript
Javascript实现运算符重载详解
Apr 07 Javascript
JavaScript实现百度搜索框效果
Mar 26 Javascript
详解操作虚拟dom模拟react视图渲染
Jul 25 Javascript
微信小程序 获取手机号 JavaScript解密示例代码详解
May 14 Javascript
浅谈JS中的bind方法与函数柯里化
Aug 10 #Javascript
封装的dialog插件 基于bootstrap模态对话框的简单扩展
Aug 10 #Javascript
JS控制静态页面传递参数并获取参数应用
Aug 10 #Javascript
基于JavaScript实现树形下拉框
Aug 10 #Javascript
关于原生js中bind函数的简单实现
Aug 10 #Javascript
Mvc提交表单的四种方法全程详解
Aug 10 #Javascript
mvc中form表单提交的三种方式(推荐)
Aug 10 #Javascript
You might like
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
2013/06/14 PHP
yii框架数据库关联查询操作示例
2019/10/14 PHP
Thinkphp 框架扩展之行为扩展原理与实现方法分析
2020/04/23 PHP
Nginx+php配置文件及原理解析
2020/12/09 PHP
cssQuery()的下载与使用方法
2007/01/12 Javascript
javascript 三种编解码方式
2010/02/01 Javascript
javascript 隔行换色函数代码
2010/10/24 Javascript
Javascript实现带关闭按钮的网页漂浮广告代码
2014/01/12 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
2014/02/19 Javascript
JavaScript数据类型检测代码分享
2015/01/26 Javascript
JQuery遍历DOM节点的方法
2015/06/11 Javascript
基于js实现投票的实例代码
2015/08/04 Javascript
Javascript编程中几种继承方式比较分析
2015/11/28 Javascript
AngularJS HTML DOM详解及示例代码
2016/08/17 Javascript
BootStrap轮播HTML代码(推荐)
2016/12/10 Javascript
js简单实现网页换肤功能
2017/04/07 Javascript
详解AngularJS脏检查机制及$timeout的妙用
2017/06/19 Javascript
Node.JS使用Sequelize操作MySQL的示例代码
2017/10/09 Javascript
vue使用echarts图表的详细方法
2018/10/22 Javascript
vue实现密码显示与隐藏按钮的自定义组件功能
2019/04/23 Javascript
Javascript如何实现扩充基本类型
2020/08/26 Javascript
一篇文章带你从零快速上手Rollup
2020/09/07 Javascript
用Python的Django框架完成视频处理任务的教程
2015/04/02 Python
python判断单向链表是否包括环,若包含则计算环入口的节点实例分析
2019/10/23 Python
Numpy一维线性插值函数的用法
2020/04/22 Python
Python csv文件记录流程代码解析
2020/07/16 Python
html5声频audio和视频video等新特性详细说明
2012/12/26 HTML / CSS
html2 canvas生成清晰的图片实现打印功能
2019/09/23 HTML / CSS
SteelSeries赛睿官网:游戏外设和配件的领先制造商(耳机、键盘、鼠标和鼠标垫)
2018/06/17 全球购物
拥有超过850家商店的美国在线派对商店:Party City
2018/10/21 全球购物
高中毕业生登记表自我鉴定范文
2014/03/18 职场文书
英文演讲稿
2014/05/15 职场文书
社区四风存在问题及整改措施
2014/10/26 职场文书
2014年监理工作总结范文
2014/11/17 职场文书
个人年度总结报告
2015/03/09 职场文书
Spring Security动态权限的实现方法详解
2022/06/16 Java/Android