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 相关文章推荐
Jquery 数据选择插件Pickerbox使用介绍
Aug 24 Javascript
JS操作Cookie写入和读取实例代码
Oct 20 Javascript
jQuery动态添加、删除元素的方法
Jan 09 Javascript
基于angular实现模拟微信小程序swiper组件
Jun 11 Javascript
深入理解Webpack 中路径的配置
Jun 17 Javascript
详解如何使用webpack+es6开发angular1.x
Aug 16 Javascript
Three.js实现绘制字体模型示例代码
Sep 26 Javascript
vue2.0在没有dev-server.js下的本地数据配置方法
Feb 23 Javascript
几个你不知道的技巧助你写出更优雅的vue.js代码
Jun 11 Javascript
JS实现可视化文件上传
Sep 08 Javascript
小程序实现选择题选择效果
Nov 04 Javascript
深入了解JavaScript代码覆盖
Jun 13 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脚本的10个技巧(7)
2006/10/09 PHP
解析在apache里面给php写虚拟目录的详细方法
2013/06/24 PHP
PHP遍历某个目录下的所有文件和子文件夹的实现代码
2013/06/28 PHP
PHP中file_exists()判断中文文件名无效的解决方法
2014/11/12 PHP
PHP+APACHE实现网址伪静态
2015/02/22 PHP
PHP微信开发之二维码生成类
2015/06/26 PHP
php使用高斯算法实现图片的模糊处理功能示例
2016/11/11 PHP
php四种定界符详解
2017/02/16 PHP
php写一个函数,实现扫描并打印出自定目录下(含子目录)所有jpg文件名
2017/05/26 PHP
PHP+MySql实现一个简单的留言板
2020/07/19 PHP
JS闭包、作用域链、垃圾回收、内存泄露相关知识小结
2016/05/16 Javascript
jquery输入数字随机抽奖特效的简单实现代码
2016/06/10 Javascript
使用BootStrap实现标签切换原理解析
2017/03/14 Javascript
详解webpack 多入口配置
2017/06/16 Javascript
vue 打包后的文件部署到express服务器上的方法
2017/08/09 Javascript
jQuery实现的淡入淡出与滑入滑出效果示例
2018/04/18 jQuery
如何在 ant 的table中实现图片的渲染操作
2020/10/28 Javascript
JS画布动态实现黑客帝国背景效果
2020/11/08 Javascript
[05:00]TI9战队采访 - Royal Never Give Up
2019/08/20 DOTA
用Python脚本来删除指定容量以上的文件的教程
2015/05/04 Python
解决Python正则表达式匹配反斜杠''\''问题
2019/07/17 Python
Python imageio读取视频并进行编解码详解
2019/12/10 Python
python 装饰器的基本使用
2021/01/13 Python
如何使用amaze ui的分页样式封装一个通用的JS分页控件
2020/08/21 HTML / CSS
波兰办公用品和学校用品在线商店:Dlabiura24.pl
2020/11/18 全球购物
医学生求职自荐信
2013/10/25 职场文书
如何撰写岗位职责
2014/02/01 职场文书
洗车工岗位职责
2014/03/15 职场文书
工商局局长个人对照检查材料思想汇报
2014/09/23 职场文书
单位授权委托书范本
2014/09/26 职场文书
五年级学生评语大全
2014/12/26 职场文书
2015年乡镇纪检工作总结
2015/04/22 职场文书
公司备用金管理制度
2015/08/04 职场文书
三好学生竞选稿
2015/11/21 职场文书
Spring Cache和EhCache实现缓存管理方式
2021/06/15 Java/Android
python实现MD5进行文件去重的示例代码
2021/07/09 Python