JS传参及动态修改页面布局


Posted in Javascript onApril 13, 2017

一个关于JS传参及动态修改页面布局的简单小例子。

效果图:

JS传参及动态修改页面布局

HTML:

<!DOCTYPE HTML>
<html>
 <head>
  <meta charset="utf-8" />
  <title></title>
  <link rel="stylesheet" href="css/style.css" rel="external nofollow" />
 </head>
 <body>
  <div id="button"><h1>请为下面的DIV设置样式:</h1><div>点击设置</div></div>
  <div id="set">
   <div class="set1"><span>请选择背景色:</span><span onclick="cl('red')">红</span><span onclick="cl('yellow')">黄</span><span onclick="cl('blue')">蓝</span></div>
   <div class="set2"><span>请选择宽(px):</span><span onclick="wd(200)">200</span><span onclick="wd(300)">300</span><span onclick="wd(400)">400</span></div>
   <div class="set2"><span>请选择高(px):</span><span onclick="hd(200)">200</span><span onclick="hd(300)">300</span><span onclick="hd(400)">400</span></div>
   <span class="btn" onclick="reset()">恢复</span>
   <span class="btn" onclick="apply()">确定</span>
  </div>
  <div id="box"></div>
  <script type="text/javascript" src="js/js.js"></script>
 </body>
</html>

CSS:

/*top:26%; left:40%;*/
#box{width:100px; height: 100px; border:4px black solid;margin-top:100px;}
#button div{background: red; width:100px; height:40px; float:left; color:white; text-align: center; line-height: 40px; cursor: pointer;}
#set{width:20%; height:28%; border:15px rgb(156,148,156) solid; background:white; position: absolute; top:300px; left:300px; box-shadow: 0 0 8px gray; display:none;}
#set div{height: 40px; margin: 20px auto;}
#set div span{width:45px; height:40px; display:block; float:left; margin-left:10px; color:white; line-height:40px; text-align:center; cursor:pointer;}
#set div span:hover{border:1px black solid}
#set div span:nth-of-type(1){width:auto; color:black; font:18px/40px "微软雅黑"; margin-left:12%; border:none; cursor:auto;}  /*:nth-of-type()表示同级同容器下该种类型的第几个标签括号内的数字即指第几个,从1开始*/
#set .set1 span:nth-of-type(2){background:rgb(230,46,0); margin-left:5px;}
#set .set1 span:nth-of-type(2):hover{background:red}
#set .set1 span:nth-of-type(3){background:rgb(239,189,0)}
#set .set1 span:nth-of-type(3):hover{background:yellow}
#set .set1 span:nth-of-type(4){background:rgb(90,148,239)}
#set .set1 span:nth-of-type(4):hover{background:blue}
#set .set2 span{border:1px rgb(198,198,198) solid; color:rgb(136,140,143)}
#set .set2 span:nth-of-type(1):hover{background:white;}
#set .set2 span:nth-of-type(2){background:rgb(239,239,239); margin-left:5px;}
#set .set2 span:nth-of-type(3){background:rgb(239,239,239)}
#set .set2 span:nth-of-type(4){background:rgb(239,239,239)}
#set .set2 span:hover{background:rgb(239,148,0)}
#set .btn{width:60px; height:30px; background:#002952; color:white; display:block; float:left; margin-left:10px; margin-top:10px; text-align:center; line-height:30px; cursor:pointer;}
#set span:nth-of-type(1){margin-left:32%;}

JS:

onload = function(){           //加载完毕给div添加点击事件,可以不这么做,像下面的reset / apply一样建立一个函数并在该div上写上Onclick点击事件调用函数即可
 var btn = document.getElementById('button').getElementsByTagName('div');
 btn[0].onclick = function(){
  document.getElementById('set').style.display = 'block';
 }
}
var box = document.getElementById('box');     //建立全局变量获取DIV对象
function wd(x){            //改变宽度
 box.style.width = x + 'px';
}

function hd(x){           //改变高度
 box.style.height = x + 'px';
}

function cl(x){            //改变颜色
 box.style.background = x;
}

function apply(){
 document.getElementById('set').style.display = 'none';
}

function reset(){            //恢复DIV原来的布局
 box.style.width = 100 + 'px';
 box.style.height = 100 + 'px';
 box.style.background = 'white';
}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
javascript权威指南 学习笔记之变量作用域分享
Sep 28 Javascript
js判断游览器类型及版本号的代码
May 11 Javascript
Ajax局部更新导致JS事件重复触发问题的解决方法
Oct 14 Javascript
浅析Node.js中的内存泄漏问题
Jun 23 Javascript
javascript正则表达式定义(语法)总结
Jan 08 Javascript
jqPlot jQuery绘图插件的使用
Jun 18 Javascript
通过bootstrap全面学习less
Nov 09 Javascript
JS实现最简单的冒泡排序算法
Feb 15 Javascript
jQuery插件FusionWidgets实现的Bulb图效果示例【附demo源码下载】
Mar 23 jQuery
JavaScript取得gridview中获取checkbox选中的值
Jul 24 Javascript
基于JS实现简单滑块拼图游戏
Oct 12 Javascript
阿望教你用vue写扫雷小游戏
Jan 20 Javascript
从零开始学习Node.js系列教程之基于connect和express框架的多页面实现数学运算示例
Apr 13 #Javascript
MUI 解决动态列表页图片懒加载再次加载不成功的bug问题
Apr 13 #Javascript
MUI  Scroll插件的使用详解
Apr 13 #Javascript
MUI 上拉刷新/下拉加载功能实例代码
Apr 13 #Javascript
从零开始学习Node.js系列教程四:多页面实现的数学运算示例
Apr 13 #Javascript
mui上拉加载功能实例详解
Apr 13 #Javascript
从零开始学习Node.js系列教程三:图片上传和显示方法示例
Apr 13 #Javascript
You might like
PHP 图片水印类代码
2012/08/27 PHP
分享一个Laravel好用的Cache宏
2015/03/02 PHP
学习php设计模式 php实现备忘录模式(Memento)
2015/12/09 PHP
PHP设置Cookie的HTTPONLY属性方法
2017/02/09 PHP
js确认删除对话框适用于a标签及submit
2014/07/10 Javascript
jQuery中on()方法用法实例详解
2015/02/06 Javascript
12306验证码破解思路分享
2015/03/25 Javascript
基于jQuery实现Accordion手风琴自定义插件
2020/10/13 Javascript
详解Vue2 无限级分类(添加,删除,修改)
2017/03/07 Javascript
Angular.JS中的this指向详解
2017/05/17 Javascript
JavaScript用二分法查找数据的实例代码
2017/06/17 Javascript
jQuery实现的鼠标滚轮控制图片缩放功能实例
2017/10/14 jQuery
JS简单获得节点元素的方法示例
2018/02/10 Javascript
JavaScript学习笔记之DOM操作实例分析
2019/01/08 Javascript
浅谈JavaScript中的“!!”作用
2020/08/03 Javascript
Vue过滤器,生命周期函数和vue-resource简单介绍
2021/01/12 Vue.js
Python实现HTTP协议下的文件下载方法总结
2016/04/20 Python
python的exec、eval使用分析
2017/12/11 Python
python实现文本界面网络聊天室
2018/12/12 Python
Python中的heapq模块源码详析
2019/01/08 Python
Python爬取爱奇艺电影信息代码实例
2019/11/26 Python
如何完美的建立一个python项目
2020/10/09 Python
Python实例教程之检索输出月份日历表
2020/12/16 Python
python实现文件+参数发送request的实例代码
2021/01/05 Python
世界上最全面的汽车零部件和配件集合:JC Whitney
2016/09/04 全球购物
英国奢侈皮具品牌:Aspinal of London
2018/09/02 全球购物
汽车电子与维修专业大学生求职信
2013/09/28 职场文书
茶叶店创业计划书范文
2014/01/19 职场文书
幼儿园秋游活动方案
2014/01/21 职场文书
2015年清明节演讲稿范文
2015/03/17 职场文书
青年志愿者活动感想
2015/08/07 职场文书
2016大学生社会实践单位评语
2015/12/01 职场文书
Python集合set()使用的方法详解
2022/03/18 Python
青岛市的收音机研制与生产
2022/04/07 无线电
微信小程序APP页面的之间的相互传递参数以及自定义组件
2022/04/19 Javascript
Vue Element plus使用方法梳理
2022/12/24 Vue.js