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 相关文章推荐
初学prototype,发个JS接受URL参数的代码
Sep 25 Javascript
javascript jscroll模拟html元素滚动条
Dec 18 Javascript
jQuery下的动画处理总结
Oct 10 Javascript
浅析js中的浮点型运算问题
Jan 06 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
Sep 23 Javascript
浅析bootstrap原理及优缺点
Mar 19 Javascript
使用JavaScript实现一个小程序之99乘法表
Sep 21 Javascript
Three.js利用dat.GUI如何简化试验流程详解
Sep 26 Javascript
JavaScript设计模式之原型模式分析【ES5与ES6】
Jul 26 Javascript
使用Vue父子组件通信实现todolist的功能示例代码
Apr 11 Javascript
Vue Cli3 打包配置并自动忽略console.log语句的方法
Apr 23 Javascript
Ajax实现局部刷新的方法实例
Mar 31 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生成HTML静态页面实例代码
2008/08/31 PHP
Zend Guard使用指南及问题处理
2015/01/07 PHP
Laravel 5 框架入门(四)完结篇
2015/04/09 PHP
Zend Framework实现具有基本功能的留言本(附demo源码下载)
2016/03/22 PHP
php结合md5的加密解密算法实例
2016/09/30 PHP
jQuery 1.2.x 升? 1.3.x 注意事项
2009/05/06 Javascript
基于Jquery的动态添加控件并取值的实现代码
2010/09/24 Javascript
window.location.hash 使用说明
2010/11/08 Javascript
原来Jquery.load的方法可以一直load下去
2011/03/28 Javascript
给jqGrid数据行添加修改和删除操作链接(之一)
2011/11/04 Javascript
jquery 卷帘效果实现代码(不同方向)
2013/02/05 Javascript
javascript获取隐藏元素(display:none)的高度和宽度的方法
2014/06/06 Javascript
jquery和js实现对div的隐藏和显示方法
2014/09/26 Javascript
详解JavaScript中循环控制语句的用法
2015/06/03 Javascript
浅析jQuery 3.0中的Data
2016/06/14 Javascript
js+css3制作时钟特效
2016/10/16 Javascript
vue微信分享到朋友圈 vue微信发送给好友
2018/11/28 Javascript
解决Angularjs异步操作后台请求用$q.all排列先后顺序问题
2019/11/29 Javascript
微信小程序顶部导航栏可滑动并选中放大
2019/12/05 Javascript
jQuery插件实现图片轮播效果
2020/10/19 jQuery
Python使用正则表达式抓取网页图片的方法示例
2017/04/21 Python
深入解析神经网络从原理到实现
2019/07/26 Python
基于python分析你的上网行为 看看你平时上网都在干嘛
2019/08/13 Python
Python自动生成代码 使用tkinter图形化操作并生成代码框架
2019/09/18 Python
TensorFLow 变量命名空间实例
2020/02/11 Python
拾金不昧的表扬信
2014/01/16 职场文书
双方协议书
2014/04/22 职场文书
护理专业求职信
2014/06/15 职场文书
优秀党员学习焦裕禄精神思想汇报范文
2014/09/10 职场文书
离退休人员聘用协议书
2014/11/24 职场文书
一年级数学下册复习计划
2015/01/17 职场文书
赤壁观后感(2)
2015/06/15 职场文书
小学英语教学随笔
2015/08/14 职场文书
悬疑名作《朋友游戏》动画无字ED宣传片 新角色公开
2022/04/13 日漫
微信小程序APP页面的之间的相互传递参数以及自定义组件
2022/04/19 Javascript
python神经网络 使用Keras构建RNN训练
2022/05/04 Python