资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

自动轮播图java代码 Java轮播图

java图形界面实现图片自动轮播

现在没空帮你写代码了,给你个思路自己写吧!轮播肯定是要切换图片的,并且一般切换的时候是从左到右或从右到左慢慢切的,所以你定义一个图片地址数组,再定义两个jlabel用来显示图片,一个JLabel显示当前图片,另一个显示最新图片!好了,现在你定义一个timer定时器来切换,每隔两秒,就判断一下最新的图片是哪个jlabel,然后将另一个jlabel填充新的图片,然后setlocation()来移动图片,x坐标每次向左几个像素,直至移动完成!这样就是一次轮播,当然你需要将两个jlabel放到一个panel中,免得会出现第二个图片多出一截在慢慢移动的情况

创新互联专注于企业全网营销推广、网站重做改版、中方网站定制设计、自适应品牌网站建设、H5网站设计商城网站制作、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为中方等各大城市提供网站开发制作服务。

js如何制作图片轮播

工具/材料

Sublime Text

01

首先在Sublime Text下面准备一个html和5张图片,图片宽高为600px和400px,如下图所示

02

然后在HTML页面中布局轮播图的结构,如下图所示,主要包括图片区域,圆形按钮,左右箭头

03

接下来需要给轮播图页面布局声明一些样式,请按照下图所示的样式代码进行声明

04

最后就是实现轮播图的JS脚本功能,如下图所示,主要包括前进,后退,自动播放的功能

05

最后运行页面,你就会看到下图所示的轮播图效果,点击圆圈或者左右箭头可以切换轮播图

图片自动播放轮播JQ,js代码。

//轮播器

var crs_num=1

function interval(){

carousel=setInterval(function(){

num2=crs_num*-800

$('.crs_img').animate({

attr:'x',

target:num2,

time:50,

speed:10,

})

$('.crs_words p').html($('.crs_img img').getnum(crs_num).attr('alt'))

$('#carousel li').css('color','#999')

$('#carousel li').getnum(crs_num).css('color','#333')

crs_num++;

if(crs_num==3)crs_num=0;

},3000)

}

interval();

$('#carousel li').hover(function(){

var num=$(this).childNum()*-800

clearInterval(carousel)

$('.crs_img').animate({

attr:'x',

target:num,

time:50,

speed:5,

})

$('.crs_words p').html($('.crs_img img').getnum($(this).childNum()).attr('alt'))

$('#carousel li').css('color','#999')

$(this).css('color','#333')

},function(){

interval()

})

animate是自己封装的,可能和jq不兼容

有一段轮播特效代码,求大神详细解释,逐字逐句的,不胜感激

function caroAnimate(imgNum) // 定义函数,参数是imgNum,表示图片数量

{

var currNav = 0; //定义变量,初始为0,表示当前图片是所有图片中的第几张。

var timer = "";// 切换时间,

var caroWidth = 320;//定义轮播图片的宽度

var imgArea = $("#adveCaro");///获取轮播图片所在的父级元素

var navArr = $("#nav_adveCaro").find("li");// 查找li元素,统计有多少张图片

var delay = 5000;//延迟切换时间。5秒切换一次

var aniSpeed = 500;//动画时间。也就是0.5秒就切换完成

loopImg(); //调用looImg函数,这里表示开始切换

startTimer(); // 设置动画切换时间

bindNavClick(); //调用用户点击事件,也就是用户点击哪张,就切换到哪张。

function loopImg(){//定义函数

imgArea.append(imgArea.children(":first").clone());///将列表中的第一张图片克隆,并附加到前面定义的父级元素下。

}

function bindNavClick(){///定义点击事件函数

navArr.click(function(){ ///点击事件

var nav = navArr.index($(this));///设置当前点击的序号,保存到nav这个变量里。

if(currNav != nav){

animate(nav);//判断,如果点击的位置不是上次点击的,就开始切换

}

});

}

function startTimer(){//设置动画切换函数

timer = setInterval(autoAnimate, delay);//表示每隔多长时间执行autoAnimate这个函数,也就是实现自动播放

}

function restartTimer(){//设置重新开始时间段,也就是设置,当播放到最后的时候,又重新来过

clearInterval(timer);//清除时间

startTimer();//重新设置时间

}

function autoAnimate(){//动事切换主函数

if(currNav == 0){

imgArea.css("margin-left","0px");//判断,如果是第一张,则设置图片显示区域左边距为0px

}

currNav++;//播放序号自加1,也就是每执行这个函数,就自动加1,相当于currNav=currNav+1

imgArea.animate({"margin-left":caroWidth*(-currNav)}, aniSpeed);//以动画的形式,aniSpeed秒后,将左边距设置父元素的宽度再减去当前的序号。

if(currNav = imgNum){

currNav = 0;//判断当前位置,currNavimgNum表示,已经到最后了,重新设置开始位置为0

}

changNav(currNav);//调用函数,根据上下文,这个功能应该是切换样式用的

}

function animate(nav){

imgArea.stop().animate({"margin-left":caroWidth*(-nav)}, aniSpeed);//这是定义停止动画时执行的特效,和面播放动画时的特效是一样的。

currNav = nav;//设置当前位置

changNav(nav);//改变样式

restartTimer();///重置时间

}

function changNav(nav){//该函数是切换样式用的

navArr.removeClass("ui-feedback");//首先将所有的图片区域样式清除

navArr.eq(nav).addClass("ui-feedback");//再给当前的图片区域加个样式

}

}

网页设计中怎样设置图片自动切换?要给个看得懂的代码,只要能够用的HTML. Java 都可以,还要

轮播图自动切换吗?

script language =javascript

var curIndex=0;

//时间间隔 单位毫秒

var timeInterval=1000;

var arr=new Array();

arr[0]="1.jpg";

arr[1]="2.jpg";

arr[2]="3.jpg";

arr[3]="4.jpg";

arr[4]="5.jpg";

arr[5]="6.jpg";

arr[6]="7.jpg";

setInterval(changeImg,timeInterval);

function changeImg()

{

var obj=document.getElementById("obj");

if (curIndex==arr.length-1)

{

curIndex=0;

}

else

{

curIndex+=1;

}

obj.src=arr[curIndex];

}

/script

img id=obj src ="1.jpg" border =0 /

这样能看懂吗?

自己设置每张图片切换的时间间隔,自己设置每张图片的路径,绝对、相对路径都可以。


新闻标题:自动轮播图java代码 Java轮播图
链接URL:http://cdkjz.cn/article/dochiod.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220