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 相关文章推荐
在Z-Blog中运行代码[html][/html](纯JS版)
Mar 25 Javascript
优化网页之快速的呈现我们的网页
Jun 29 Javascript
js 弹出新页面避免被浏览器、ad拦截的一种新方法
Apr 30 Javascript
解决jQuery上传插件Uploadify出现Http Error 302错误的方法
Dec 18 Javascript
集合Bootstrap自定义confirm提示效果
Sep 19 Javascript
Vue实现web分页组件详解
Nov 28 Javascript
javascript中的replace函数(带注释demo)
Jan 07 Javascript
从零开始最小实现react服务器渲染详解
Jan 26 Javascript
vue自定义一个v-model的实现代码
Jun 21 Javascript
微信小程序实现tab左右切换效果
Nov 15 Javascript
在Vue.js中使用TypeScript的方法
Mar 19 Javascript
JavaScript阻止事件冒泡的方法
Dec 06 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
Apache设置虚拟WEB
2006/10/09 PHP
php将会员数据导入到ucenter的代码
2010/07/18 PHP
PHP开发API接口签名生成及验证操作示例
2020/05/27 PHP
一个js封装的不错的选项卡效果代码
2008/02/15 Javascript
详细讲解JS节点知识
2010/01/31 Javascript
brook javascript框架介绍
2011/10/10 Javascript
基于javascipt-dom编程 table对象的使用
2013/04/22 Javascript
JavaScript实现的encode64加密算法实例分析
2015/04/15 Javascript
javascript生成不重复的随机数
2015/07/17 Javascript
jQuery实现文档树效果
2017/02/20 Javascript
ES6生成器用法实例分析
2017/04/10 Javascript
jquery ui sortable拖拽后保存位置
2017/04/27 jQuery
jQuery tip提示插件(实例分享)
2017/04/28 jQuery
产制造追溯系统之通过微信小程序实现移动端报表平台
2019/06/03 Javascript
Python 字符串中的字符倒转
2008/09/06 Python
python同时给两个收件人发送邮件的方法
2015/04/30 Python
python中 logging的使用详解
2017/10/25 Python
详解PANDAS 数据合并与重塑(join/merge篇)
2019/07/09 Python
Python 离线工作环境搭建的方法步骤
2019/07/29 Python
python GUI库图形界面开发之PyQt5窗口类QMainWindow详细使用方法
2020/02/26 Python
keras load model时出现Missing Layer错误的解决方式
2020/06/11 Python
美国在线购买内衣网站:HerRoom
2020/02/22 全球购物
STP协议的主要用途是什么?为什么要用STP
2012/12/20 面试题
应届毕业生专业个人求职自荐信格式
2013/11/20 职场文书
信息专业大学生自我评价分享
2014/01/17 职场文书
实习生岗位职责
2014/04/12 职场文书
物业总经理助理岗位职责
2014/06/29 职场文书
学风建设演讲稿
2014/09/12 职场文书
党的群众路线教育实践活动组织生活会发言材料
2014/10/17 职场文书
卫生院义诊活动总结
2015/05/07 职场文书
导游词之上海杜莎夫人蜡像馆
2019/11/22 职场文书
vue引入Excel表格插件的方法
2021/04/28 Vue.js
php+laravel 扫码二维码签到功能
2021/05/15 PHP
python图像处理 PIL Image操作实例
2022/04/09 Python
Python中request的基本使用解决乱码问题
2022/04/12 Python
Python使用openpyxl模块处理Excel文件
2022/06/05 Python