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中eq和get的区别与使用方法
Apr 14 Javascript
javascript中有趣的反柯里化深入分析
Dec 05 Javascript
javascript通过class来获取元素实现代码
Feb 20 Javascript
javascript获取ckeditor编辑器的值(实现代码)
Nov 18 Javascript
数据分析软件之FineReport教程:[5]参数界面JS(全)
Aug 13 Javascript
通用javascript代码判断版本号是否在版本范围之间
Nov 29 Javascript
利用jquery实现瀑布流3种案例
Sep 18 Javascript
CodeMirror js代码加亮使用总结
Mar 25 Javascript
vue实现全选和反选功能
Aug 31 Javascript
怎样使你的 JavaScript 代码简单易读(推荐)
Apr 16 Javascript
解决vue无法侦听数组及对象属性的变化问题
Jul 17 Javascript
微信小程序实现购物车小功能
Dec 30 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
一些星际专用术语解释
2020/03/04 星际争霸
PHP5中的时间相差8小时的解决办法
2008/03/28 PHP
php与XML、XSLT、Mysql的结合运用实现代码
2009/11/19 PHP
上传文件先创建目录 再上传到目录里面去
2010/12/29 PHP
体育彩票排列三组选三算法分享
2014/03/07 PHP
php socket实现的聊天室代码分享
2014/08/16 PHP
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
2016/03/07 PHP
php微信开发之带参数二维码的使用
2016/08/03 PHP
简述php环境搭建与配置
2016/12/05 PHP
thinkPHP中U方法加密传递参数功能示例
2018/05/29 PHP
javascript 极速 隐藏/显示万行表格列只需 60毫秒
2009/03/28 Javascript
在jQuery 1.5中使用deferred对象的代码(翻译)
2011/03/10 Javascript
基于Vuejs实现购物车功能
2016/08/02 Javascript
JS中检测数据类型的几种方式及优缺点小结
2016/12/12 Javascript
基于Vue实例生命周期(全面解析)
2017/08/16 Javascript
Nodejs处理异常操作示例
2018/12/25 NodeJs
微信小程序如何使用globalData的方法
2019/06/06 Javascript
vue页面切换项目实现转场动画的方法
2019/11/12 Javascript
原生javascript单例模式的应用实例分析
2020/02/23 Javascript
浅谈Vue static 静态资源路径 和 style问题
2020/11/07 Javascript
在Django的URLconf中进行函数导入的方法
2015/07/18 Python
利用Python自动监控网站并发送邮件告警的方法
2016/08/24 Python
python使用matplotlib画柱状图、散点图
2019/03/18 Python
python网络编程之多线程同时接受和发送
2019/09/03 Python
OpenCV 表盘指针自动读数的示例代码
2020/04/10 Python
python中元组的用法整理
2020/06/15 Python
Python Selenium自动化获取页面信息的方法
2020/08/31 Python
实例教程 纯CSS3打造非常炫的加载动画效果
2014/11/05 HTML / CSS
毕业生自我鉴定实例
2014/01/21 职场文书
《陋室铭》教学反思
2014/02/26 职场文书
工程售后服务方案
2014/06/08 职场文书
收入及婚姻状况证明
2014/11/20 职场文书
简历自我评价优缺点
2015/03/11 职场文书
IDEA2021.2配置docker如何将springboot项目打成镜像一键发布部署
2021/09/25 Java/Android
python脚本框架webpy的url映射详解
2021/11/20 Python
台积电称即便经济低迷也没有降价的计划
2022/04/21 数码科技