javascript-初级-day05js函数传参
JS基础-01 函数传参、参数类型-1
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script>
- /*
- 函数传递参数
- 参数=JS的数据类型:
- 数字、字符串、布尔、函数、对象、未定义
- */
- fn1(100, 'px');
- function fn1(a, b){
- // alert( a+b );
- }
- fn2('miaov');
- fn2('妙味课堂');
- function fn2(a){
- // alert(a.charAt(2));
- }
- function fn4(){
- alert(4);
- }
- // fn3( fn4 );
- // fn3( function ( a ){ alert(a); } );
- function fn3( fn ){
- // fn(100);
- fn();
- }
- fn5( window, document );
- function fn5( w, d ){
- w.onload = function (){
- d.body.innerHTML = 123;
- };
- }
- </script>
- </head>
- <body>
- </body>
- </html>
JS基础-02 函数传参、重用
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script>
- fn1(100);
- fn1('miaov');
- fn1(function (){ alert(1); });
- function fn1(a){
- if( typeof a === 'number' && a === a ){
- alert( a+20 );
- } else if ( typeof a === 'string' ) {
- alert( a.charAt(2) );
- } else if ( typeof a === 'function' ) {
- a();
- }
- }
- </script>
- </head>
- <body>
- </body>
- </html>
JS基础-03 函数传参、重用的应用
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <style>
- ul { padding:0; margin:0; }
- li { list-style:none; }
- body { background:#333; }
- .box { width:400px; height:500px; position:relative; background:url(img/loader_ico.gif) no-repeat center #fff; float:left; margin-right:60px; }
- .box img { width:400px; height:500px; }
- .box ul { width:40px; position:absolute; top:0; right:-50px; }
- .box li { width:40px; height:40px; margin-bottom:4px; background:#666; }
- .box .active { background:#FC3; }
- .box span { top:0; }
- .box p { bottom:0; margin:0; }
- .box p,.box span { position:absolute; left:0; width:400px; height:30px; line-height:30px; text-align:center; color:#fff; background:#000; }
- </style>
- <script>
- /*
- 重用代码:
- 1、尽量保证 HTML 代码结构一致,可以通过父级选取子元素
- 2、把核心主程序实现,用函数包起来
- 3、把每组里不同的值找出来,通过传参实现
- */
- window.onload = function (){
- fnTab( 'pic1', [ 'img/1.png', 'img/2.png', 'img/3.png', 'img/4.png' ], [ '小宠物', '图片二', '图片三', '面具' ], 'onclick' );
- fnTab( 'pic2', [ 'img/2.png', 'img/3.png', 'img/4.png' ], [ '图片二', '图片三', '面具' ], 'onmouseover' );
- };
- function fnTab( id, arrUrl, arrText, evt ){
- var oDiv = document.getElementById(id);
- var oImg = oDiv.getElementsByTagName('img')[0];
- var oSpan = oDiv.getElementsByTagName('span')[0];
- var oP = oDiv.getElementsByTagName('p')[0];
- var oUl = oDiv.getElementsByTagName('ul')[0];
- var aLi = oUl.getElementsByTagName('li');
- var num = 0;
- for( var i=0; i<arrUrl.length; i++ ){
- oUl.innerHTML += '<li></li>';
- }
- // 初始化
- function fnTab(){
- oImg.src = arrUrl[num];
- oSpan.innerHTML = 1+num+' / '+arrUrl.length;
- oP.innerHTML = arrText[num];
- for( var i=0; i<aLi.length; i++ ){
- aLi[i].className = '';
- }
- aLi[num].className = 'active';
- }
- fnTab();
- for( var i=0; i<aLi.length; i++ ){
- aLi[i].index = i; // 索引值
- aLi[i][evt] = function (){
- num = this.index;
- fnTab();
- };
- }
- }
- </script>
- </head>
- <body>
- <div id="pic1" class="box">
- <img src="" />
- <span>数量正在加载中……</span>
- <p>文字说明正在加载中……</p>
- <ul></ul>
- </div>
- <div id="pic2" class="box">
- <img src="" />
- <span>数量正在加载中……</span>
- <p>文字说明正在加载中……</p>
- <ul></ul>
- </div>
- </body>
- </html>
左边是点击事件,又是鼠标滑入事件
JS基础-04 计算价格:
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script>
- /*
- 重用代码:
- 1、尽量保证 HTML 代码结构一致,可以通过父级选取子元素
- 2、把核心主程序实现,用函数包起来
- 3、把每组里不同的值找出来,通过传参实现
- */
- window.onload = function (){
- var oUl = document.getElementById('list');
- //获取一组li值
- var aLi = oUl.getElementsByTagName('li');
- //一组li的值进行遍历
- for( var i=0; i<aLi.length; i++ ){
- fn1(aLi[i]);
- }
- function fn1(oLi){
- var aBtn = oLi.getElementsByTagName('input');
- var oStrong = oLi.getElementsByTagName('strong')[0];
- var oEm = oLi.getElementsByTagName('em')[0];
- var oSpan = oLi.getElementsByTagName('span')[0];
- var n1 = Number(oStrong.innerHTML); // '0' => 0
- var n2 = parseFloat(oEm.innerHTML); // '12.5元' => 12.5
- //点击事件
- aBtn[0].onclick = function (){
- n1 --;
- if ( n1 < 0 ) {
- n1 = 0;
- }
- oStrong.innerHTML = n1;
- oSpan.innerHTML = n1*n2 + '元';
- p.n1+= parseFloat(oSpan.innerHTML);
- };
- aBtn[1].onclick = function (){
- n1 ++;
- oStrong.innerHTML = n1;
- oSpan.innerHTML = n1*n2 + '元';
- };
- }
- };
- </script>
- </head>
- <body>
- <ul id="list">
- <li>
- <input type="button" value="-" />
- <strong>0</strong>
- <input type="button" value="+" />
- 单价:<em>12.5元</em>
- 小计:<span>0元</span>
- </li>
- <li>
- <input type="button" value="-" />
- <strong>0</strong>
- <input type="button" value="+" />
- 单价:<em>10.5元</em>
- 小计:<span>0元</span>
- </li>
- <li>
- <input type="button" value="-" />
- <strong>0</strong>
- <input type="button" value="+" />
- 单价:<em>8.5元</em>
- 小计:<span>0元</span>
- </li>
- <li>
- <input type="button" value="-" />
- <strong>0</strong>
- <input type="button" value="+" />
- 单价:<em>8元</em>
- 小计:<span>0元</span>
- </li>
- <li>
- <input type="button" value="-" />
- <strong>0</strong>
- <input type="button" value="+" />
- 单价:<em>14.5元</em>
- 小计:<span>0元</span>
- </li>
- </ul>
- </body>
- </html>
javascript-初级-day05js函数传参的更多相关文章
- 【JS学习笔记】函数传参
比如仅仅改变背景的颜色 函数传参:参数就是占位符. 那么在什么时候用传参呢?函数里定不下来的东西. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...
- c# 内存的具体表现- 通用类型系统 深拷贝 浅拷贝 函数传参
c# 通用类型系统 及变量在 深拷贝 浅拷贝 函数传参 中的深层次的表现 在编程中遇到了一些想不到的异常,跟踪发现,自己对于c#变量在内存上的表现理解有偏差,系统的学习并通过代码实验梳理了各种情况下, ...
- 函数传参,改变Div任意属性的值&&图片列表:鼠标移入/移出改变图片透明度
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- x64汇编第三讲,64位调用约定与函数传参.
目录 x64汇编第三讲,64位调用约定与函数传参. 一丶复习X86传参 二丶x64汇编 2.1汇编详解 x64汇编第三讲,64位调用约定与函数传参. 一丶复习X86传参 在x86下我们汇编的传参如下: ...
- VC与JavaScript交互(三) --- CWebPage类调用javascript函数(给js函数传参,并取得返回值)
①需要一个别人写好的类CWebPage,将其对于的两个文件WebPage.h和WebPage.cpp添加到工程中. ②添加WebBrowser控件,在视图/对话框类的头文件中#include &quo ...
- VC/MFC中通过CWebPage类调用javascript函数(给js函数传参,并取得返回值)
转自:http://www.cnblogs.com/javaexam2/archive/2012/07/14/2632959.html ①需要一个别人写好的类CWebPage,将其对于的两个文件Web ...
- JavaScript函数传参
函数传参一: <html> <head> <meta charset="utf-8"> <title>无标题文档</title ...
- js函数传参
函数传参:重用代码,首先保持html代码相对一致,把核心主程序用函数包起来,把每组不同的值找出来,通过传参的方式减少代码的使用 下面代码是我早期练习的,大家随便看看就好 <!DOCTYPE ht ...
- JS之arguments属性解读函数传参?
Arguments 该对象代表正在执行的函数 和 调用他的函数的参数. arguments属性:为当前执行中的 Function 对象返回 arguments 对象 和 参数. [function.] ...
随机推荐
- 题解 「JOISC 2016 Day 3」电报
题目传送门 题目大意 给出一个\(n\)个点\(n\)条边的图,每个点有且仅有一个出边,改变每条边都会有对应的花费.求最小的花费使得整个图强连通. 思路 很显然,最后的图就是一个环.那我们要求的答案实 ...
- docsify + Gitee Pages服务搭建开源项目网站
前言 base-admin从开源至今,已经收获了2k Stat,而我们一直都没有一份像样的在线文档,最近写了一个博客园随笔备份Java脚本,将博客随笔备份到本地,格式是md文档格式,就有意去找将md文 ...
- C++编译Dlib库出现LNK2001错误(原因是在Python中安装过Dlib)
问题 使用CMake编译Dlib库,编译得到lib文件后,新建一个VS工程想使用Dlib,却出现LNK2001:无法解析的外部符号的错误,且都与JPEG和PNG相关: 1>dlib19.17.9 ...
- py3.8安装
ubantu python3.8# 命令下载wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tar.xz#解压tar -xvJf P ...
- 解决git clone慢问题
解决git clone慢 关于Git克隆或是上传代码龟速的问题真是让人很恼火,这里对于网上的两种解决方案进行摘录. 利用码云克隆github项目 亲测有效 进入码云,新建一个仓库: 在创建的最后选择导 ...
- Alpha发布声明
项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任健) 这个作业的要求在哪里 Alpha-发布声明 我们是谁 删库跑路对不队 我们在做什么 题士 进度如何 进度总览 一.功能与特性 1. ...
- Beta阶段第七次会议
Beta阶段第七次会议 时间:2020.5.23 完成工作 姓名 工作 难度 完成度 ltx 1.修改小程序页面无法加载bug2.修改条件语句,使得页面能够正常显示 中 90% xyq 1.根据api ...
- 数位dp & 热身训练7
数位dp 数位dp是一种计数用的dp,一般就是要统计一段区间$[L,R]$内,满足一定条件的数的个数,或者各个数位的个数. 数位dp使得暴力枚举变为满足一定状态的记忆化,更加优秀. 数位dp常常会考虑 ...
- 计算机中的contex理解
原文链接 https://www.xuebuyuan.com/2016635.html 1.其实简单的说就是跟当前主题有关的所有内容. 2.如说到程序的上下文,就是当前这段程序之上和之下的程序段.因 ...
- Python reload(sys) NameError: name 'reload' is not defined
转载:Python reload(sys) NameError: name 'reload' is not defined - vercont - 博客园 (cnblogs.com) 对于 Pytho ...