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 相关文章推荐
JS 控制CSS样式表
Aug 20 Javascript
关于COOKIE个数与大小的问题
Jan 17 Javascript
JQuery打造省市下拉框联动效果
May 18 Javascript
利用iscroll4实现轮播图效果实例代码
Jan 11 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
Mar 02 Javascript
JS实现含有中文字符串的友好截取功能分析
Mar 13 Javascript
Vue 实时监听窗口变化 windowresize的两种方法
Nov 06 Javascript
jQuery实现数字自动增加或者减少的动画效果示例
Dec 11 jQuery
深入浅出 Vue 系列 -- 数据劫持实现原理
Apr 23 Javascript
JS/CSS实现字符串单词首字母大写功能
Sep 03 Javascript
vue基于Echarts的拖拽数据可视化功能实现
Dec 04 Vue.js
JavaScript小技巧带你提升你的代码技能
Sep 15 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
php基础知识:控制结构
2006/12/13 PHP
Breeze 文章管理系统 v1.0.0正式发布
2006/12/14 PHP
php在线打包程序源码
2008/07/27 PHP
php中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
2009/09/05 PHP
php强制文件下载而非在浏览器打开的自定义函数分享
2014/05/08 PHP
windows的文件系统机制引发的PHP路径爆破问题分析
2014/07/28 PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
2017/02/25 PHP
解决出现SoapFault (looks like we got no XML document)的问题
2017/06/24 PHP
php设计模式之中介者模式分析【星际争霸游戏案例】
2020/03/23 PHP
限制复选框的最大可选数
2006/07/01 Javascript
超级简单的图片防盗(HTML),好用
2007/04/08 Javascript
Jquery常用技巧收集整理篇
2010/11/14 Javascript
js实现简洁的TAB滑动门效果代码
2015/09/06 Javascript
jQuery 弹出层插件(推荐)
2016/05/24 Javascript
原生 JS Ajax,GET和POST 请求实例代码
2016/06/08 Javascript
JS实现图片剪裁并预览效果
2016/08/12 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
2017/01/09 Javascript
Vue指令的钩子函数使用方法
2017/03/20 Javascript
JavaScript禁止微信浏览器下拉回弹效果
2017/05/16 Javascript
nodejs 简单实现动态html的方法
2018/05/12 NodeJs
图文讲解vue的v-if使用方法
2019/02/11 Javascript
javascript实现导航栏分页效果
2019/06/27 Javascript
浅谈JS中this在各个场景下的指向
2019/08/14 Javascript
微信小程序一周时间表功能实现
2019/10/17 Javascript
在vue中使用cookie记住用户上次选择的实例(本次例子中为下拉框)
2020/09/11 Javascript
javascript代码实现简易计算器
2021/01/25 Javascript
[01:03:54]Liquid vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
opencv python 傅里叶变换的使用
2018/07/21 Python
Python从数据库读取大量数据批量写入文件的方法
2018/12/10 Python
Python判断telnet通不通的实例
2019/01/26 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
2019/06/12 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
2020/03/13 Python
Matplotlib中%matplotlib inline如何使用
2020/07/28 Python
python 中关于pycharm选择运行环境的问题
2020/10/31 Python
美国著名的家居用品购物网站:Bed Bath & Beyond
2018/01/05 全球购物
商铺租房协议书范本
2014/12/04 职场文书