JS函数传参实例应用,多组图片切换实例

<div class="box" id="pic1">

<img src="" />

<span>数量正在加载中……</span>

<p>文字说明正在加载中……</p>

<ul></ul>

</div>

<div class="box" id="pic2">

<img src="" />

<span>数量正在加载中……</span>

<p>文字说明正在加载中……</p>

<ul></ul>

</div>

复制代码

css样式:

复制代码

<style>

ul { padding:0; margin:0; }

li { list-style:none; }

.box { width:400px; height:500px; position:relative;

float: left;margin-right:60px; background:url(img/loader_ico.gif) no-repeat center #fff; }

.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>

复制代码

js代码:

复制代码

<script>

window.onload = function(){

fnTab("pic1",["img/pic1.jpg","img/pic2.jpg","img/pic3.jpg","img/pic4.jpg"],["图1","图2","图3","图4"],"onclick");

fnTab("pic2",["img/pic4.jpg","img/pic2.jpg","img/pic1.jpg","img/pic4.jpg"],["图4","图2","图3","图1"],"onmouseover")

};

function fnTab(id,arrImg,arrPtxt,evt){

var oDiv=document.getElementById(id);

var oImg=oDiv.getElementsByTagName("img")[0];

var oUl=oDiv.getElementsByTagName("ul")[0];

var aLi=oUl.getElementsByTagName("li");

var oSpan=oDiv.getElementsByTagName("span")[0];

var oPtxt=oDiv.getElementsByTagName("p")[0];

var num=0;

//在ul里追加li,li的数量等于数组的长度

for(var i=0;i<arrImg.length;i++){

oUl.innerHTML += "<li></li>";

}

//初始化

function fn(){

oImg.src=arrImg[num];

oPtxt.innerHTML=arrPtxt[num];

oSpan.innerHTML=1+num+"/"+arrImg.length;

for(var i=0;i<aLi.length;i++){

aLi[i].className="";

}

aLi[num].className="active"

}

fn();

for(var i=0;i<aLi.length;i++){//循环li

aLi[i].index=i;//索引值,当前li等于i

aLi[i][evt]=function(){

num = this.index;

fn();

}

}

}

</script>

原文地址:https://www.cnblogs.com/tongguilin/p/12219496.html

时间: 2024-10-06 00:17:43

JS函数传参实例应用,多组图片切换实例的相关文章

php如何向js函数传参的几种方法

在php编程中向js函数传参可以使用$_POST也可使用$_SESSION[' '],也可用echo语句进行输出 <?php echo "<script>test('$_POST[userid]');</script> ";?>在上面的$_POST['']也可适用$_SESSION[' '];<?php $para = "hello boby!"; echo $para; // www.jbxue.comecho "

JS函数传参实例应用:多组图片切换实例

之前的博客有一个图片切换的例子,实现了简单轮播图的点击切换的案例,今天就说一下多组轮播切换,前提是布局差不多,通过函数传参的形式减少代码应用,但是同时还能实现效果.先来看一下之前那个例子的实现图片: 那么今天我来实现两组这样的图片切换,通过传参数来实现,这样分可以减少js代码: <div class="box" id="pic1"> <img src="" /> <span>数量正在加载中--</span

JS函数传参理解

我的理解:js函数传递的参数如果是对象,那么他复制的值是地址.于是person的地址复制给了obj,obj.name='Nicholas'就修改了person.name.之后obj又指向了新地址,此时的obj.name和person毫无关系.所以最后的结果person.name='Nicholas';

JS——变量和函数的预解析、匿名函数、函数传参、return

JS解析过程分为两个阶段:编译阶段.执行阶段.在编译阶段会将函数function的声明和定义都提前,而将变量var的声明提前,并将var定义的变量赋值为undefined. 匿名函数: window.onload = function () { var oBtn01 = document.getElementById('btn01'); var oBtn02 = document.getElementById('btn02'); //注意这里不能有括号,skin01()的话就立刻执行了哦,所以不

函数传参课后练习—JS学习笔记2015-6-7(第51天)

老师的课后作业练习,看代码(最贵价格那个没有实现): 1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 5 <title>J函数传参——商品价格计算</title> 6 </head> 7 8 <body> 9

数据类型回顾——函数传参之商品价格计算—JS学习笔记2015-6-6(第50天)

经常我们可以看到很多网站会有多个相同功能的模块,比如淘宝首页的轮播,比如新浪首页的tab切换: 那么可以看出这些地方在HTML结构上是类似的,所以我们可以考虑用一块功能代码去实现,而不同是仅仅是传递参数的不同: 例如: 1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"

Date对象,封闭空间,函数传参和封装,获取非行间样式,字符串操作

一.Date对象 1. 获取 oDate.getFullYear() 获取年份 oDate.getMonth()+1  获取月份( 0-11)----->1-12 oDate.getDate()  获取日 1-31 oDate.getHours() 获取小时 oDate.getMinutes() 获取分 oDate.getSeconds() 获取秒 oDate.getMilliseconds();   //毫秒 oDate.getDay() 获取星期几 0-6     0:星期天 例:数码时钟

Javascript 之《函数传参到底是值传递还是引用传递》

前言 这个问题其实困惑了我好久,但是在实际使用中总是得过且过,不想去深究.由于这种态度,在学习 Javascript 过程中,水平一直都是出于半桶水状态,很多概念和原理似懂非懂,模糊不清. 所以,写了一系列的<Javascript 之 ...>就是为了端正态度,认真地研究一下 Javascript 的特性和原理,夯实基础. 今天,这一篇探究的是函数传参的问题:函数传参到底是传值还是传的引用? 1.如果是引用传递 var name = 'JS'; function changeName(name

关于函数传参--传指针,传引用

今天和同学讨论到指针和引用的传递问题,有些想法从推理上讲是正确的,但是因为是推理,说出自己观点的时候不是那么有底气,本着实践是检验真理的唯一标准的原则,在电脑上敲了几段代码,验证了推理的正确性. 先上代码,再分析. 代码1: void Swap0(int a1,int b1){ int temp; temp=a1; a1=b1; b1=temp; } void Swap1(int *a1,int *b1){ //交换地址 int *temp; temp=a1; a1=b1; b1=a1; } v