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 相关文章推荐
js cookies 常见网页木马挂马代码 24小时只加载一次
Apr 13 Javascript
淘宝搜索框效果实现分析
Mar 05 Javascript
IE和Firefox的Javascript兼容性总结[推荐收藏]
Oct 19 Javascript
浅谈JS日期(Date)处理函数
Dec 07 Javascript
js实现禁止中文输入的方法
Jan 14 Javascript
jquery.uploadify插件在chrome浏览器频繁崩溃解决方法
Mar 01 Javascript
基于javascript代码实现通过点击图片显示原图片
Nov 29 Javascript
微信小程序 input输入框控件详解及实例(多种示例)
Dec 14 Javascript
React降级配置及Ant Design配置详解
Dec 27 Javascript
JS动态显示倒计时效果
Dec 12 Javascript
vue如何在用户要关闭当前网页时弹出提示的实现
May 31 Javascript
vue+element实现动态加载表单
Dec 13 Vue.js
从零开始学习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
通过文字传递创建的图形按钮
2006/10/09 PHP
如何隐藏你的.php文件
2007/01/04 PHP
PHP实现用户认证及管理完全源码
2007/03/11 PHP
15种PHP Encoder的比较
2007/04/17 PHP
PHP中date与gmdate的区别及默认时区设置
2014/05/12 PHP
PHP 之 写时复制介绍(Copy On Write)
2014/05/13 PHP
laravel使用Faker数据填充的实现方法
2019/04/12 PHP
基于jQuery的简单的列表导航菜单
2011/03/02 Javascript
jquery用get实现ajax在ie里面刷新不进入后台解决方法
2013/08/12 Javascript
js 去掉空格实例 Trim() LTrim() RTrim()
2014/01/07 Javascript
js sort 二维数组排序的用法小结
2014/01/24 Javascript
以jQuery中$.Deferred对象为例讲解promise对象是如何处理异步问题
2015/11/13 Javascript
浅谈react+es6+webpack的基础配置
2017/08/09 Javascript
vue proxyTable 接口跨域请求调试的示例
2017/09/12 Javascript
vue2中使用less简易教程
2018/03/27 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
小程序实现选择题选择效果
2018/11/04 Javascript
vue引入微信sdk 实现分享朋友圈获取地理位置功能
2019/07/04 Javascript
[47:08]OG vs INfamous 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
深入讲解Python中的迭代器和生成器
2015/10/26 Python
python判断文件是否存在,不存在就创建一个的实例
2019/02/18 Python
python占位符输入方式实例
2019/05/27 Python
Django CBV类的用法详解
2019/07/26 Python
Pytorch 多维数组运算过程的索引处理方式
2019/12/27 Python
Pytorch模型转onnx模型实例
2020/01/15 Python
Python基于pandas绘制散点图矩阵代码实例
2020/06/04 Python
印度首选时尚目的地:Reliance Trends
2018/01/17 全球购物
洗煤厂厂长岗位职责
2014/01/03 职场文书
综合实践教学反思
2014/01/31 职场文书
最经典的大学生职业生涯规划范文
2014/03/05 职场文书
国际贸易实务实训报告
2014/11/05 职场文书
2014年助理政工师工作总结
2014/12/19 职场文书
2015年七一建党节慰问信
2015/03/23 职场文书
数据库连接池
2021/04/06 MySQL
JavaWeb实现显示mysql数据库数据
2022/03/19 Java/Android
vue实现简易音乐播放器
2022/08/14 Vue.js