a标签点击切换图片与图片切换浏览效果

a标签事件一般情况是这样写的, 也可能是绑定事件, 解决方式一样:

1. <a href="网页特效://" onclick="dosomething()">a1</a>

2. <a href="javascript:void(0)" onclick="dosomething()">a2</a>

3. <a href="###" onclick="dosomething()">a3</a>

第三种方法dosomething()中切换图片完全没有问题, 但是href="###" 却带来了另一个问题, 占用了锚点,页面url也不美观.

第1,2种方式虽然没有上面的问题, 但会引发ie6的奇怪bug, dosomething()中图片无法加载.

只要在dosomething();后面增加一个return false;就可以解决了.

如果是绑定事件, 同样在function最后增加return false;就行.

看一款js图片切换效果

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

</head>
<body>
<a href="http://www.111cn.net/">站长特效网</a>,

<button onclick="slider.next()">下一张</button>
<script type="text/javascript">
<!--
slider = {
isie : true,
m_imagesource : [],
m_selidx : 0,
m_direction : 1,
m_mainviewer : null,
m_delaytimer : null,
m_delaytimer1 : null,
m_curobj : null,
m_tarobj : null,
m_inited : false,
init : function(id, w, h, w1, h1, p, t, s, source){
this.isie = document.all ? true : false;
this.canvaswidth = w;
this.canvasheight = h;
this.imagewidth = w1;
this.imageheight = h1;
this.m_percent = p;
this.m_top = t;
this.m_spacewidth = s;
this.writecanvas(id);
for(var i=0;i<source.length;i++)
{//欢迎来到站长特效网,我们的网址是,很好记,zz站长,js就是js特效,本站收集大量高质量js代码,还有许多广告代码下载。
this.container.innerhtml += '<img src="'+source[i]+'" border="0" style="'+(this.isie?'filter:alpha(opacity=50)':'opacity:0.5')+';width:'+w1+'px;height:'+h1+'px;position:absolute;left:'+(i*w1+i*this.m_spacewidth)+'px;top:'+this.m_top+'px;" index="'+i+'"/>';
}
this.m_mainviewer = this.container.firstchild.clonenode(true);
this.bind();
this.start();
},
writecanvas : function(id)
{//欢迎来到站长特效网,我们的网址是,很好记,zz站长,js就是js特效,本站收集大量高质量js代码,还有许多广告代码下载。
document.write('<div id="'+id+'" style="width:'+this.canvaswidth+'px;height:'+this.canvasheight+'px;position:relative;overflow:hidden;background-color:black"></div>');
this.container = document.getelementbyid(id);
},
bind : function(obj, evt, fun){
var obj = this.container;
for(var i=0;i<obj.childnodes.length;i++)
{
this.attachevent(this.container.childnodes[i], "mouseo教程ver", this.mouseover);
this.attachevent(this.container.childnodes[i], "mouseout" , this.mouseout);
this.attachevent(this.container.childnodes[i], "click" , this.click);
}//欢迎来到站长特效网,我们的网址是,很好记,zz站长,js就是js特效,本站收集大量高质量js代码,还有许多广告代码下载。
},
attachevent : function(obj, evt, fun){
if (slider.isie)
{
obj.attachevent("on"+evt, fun)
}else
{
obj.addeventlistener(evt, fun, false);
}
},
mouseover : function(e)
{
if(!e)e=window.event;
var obj = e.srcelement || e.target;
if (slider.isie)
{
obj.style.filter = "alpha(opacity=80)";
}else{
obj.style.opacity = "0.8";
}
},
mouseout : function(e)
{
if(!e)e=window.event;
var obj = e.srcelement || e.target;
if (slider.isie)
{
obj.style.filter = "alpha(opacity=50)";
}else{
obj.style.opacity = "0.5";
}//欢迎来到站长特效网,我们的网址是,很好记,zz站长,js就是js特效,本站收集大量高质量js代码,还有许多广告代码下载。
},
click : function(e)
{
if(!e)e=window.event;
var obj = e.srcelement || e.target;
var mobj = slider.m_mainviewer;
slider.m_selidx = obj.getattribute("index");
slider.m_curobj = slider.m_mainviewer;
slider.m_tarobj = obj;
slider.m_delaytimer = slider.fadein(200,5);
},
start : function(){
var obj = this.m_mainviewer;
if (slider.isie)
{
obj.style.filter = "alpha(opacity=100)";
}else{
obj.style.opacity = "1";
}
this.container.appendchild(this.m_mainviewer);
this.m_mainviewer.style.width = parseint(this.m_mainviewer.style.width)*(1+this.m_percent)+"px";
this.m_mainviewer.style.height = parseint(this.m_mainviewer.style.height)*(1+this.m_percent)+"px";
this.m_curobj = this.container.childnodes[this.m_selidx];
this.m_tarobj = this.m_mainviewer;
if(this.m_delaytimer)clearinterval(slider.m_delaytimer);
this.m_delaytimer = this.fadein(200,5);
},
next : function(){
var obj = this.container;
var mobj = this.m_mainviewer;
if(this.m_selidx == obj.childnodes.length-2)
{
this.m_direction = -1;
}
if(this.m_selidx == 0)
{
this.m_direction = 1;
}
slider.m_curobj = mobj;
slider.m_tarobj = obj.childnodes[this.m_selidx];
this.m_delaytimer = this.fadein(200,5);
mobj.src = obj.childnodes[this.m_selidx].src;
if(this.m_direction==-1){
this.m_selidx --;
}else{
this.m_selidx ++;
}
},
fadein : function(aa, ab){
var obj = this.container;
with(this.m_curobj.style){var t1 = parseint(left);var t3 = parseint(width);var t4 = parseint(height);var t5 = parseint(top);}
if (slider.m_inited)
{
var k1 = (t1 - (this.canvaswidth- parseint(this.m_curobj.style.width))/2)/ab;
var k3 = (t3-parseint(this.m_tarobj.style.width))/ab;
var k4 = (t4-parseint(this.m_tarobj.style.height))/ab;
var k5 = (t5 - parseint(this.m_tarobj.style.top))/ab;
}else{
var k1 = (t1 - (this.canvaswidth- this.imagewidth*(1+this.m_percent))/2)/ab;
var k3 = (t3- this.imagewidth*(1+this.m_percent))/ab;
var k4 = (t4 - this.imageheight*(1+this.m_percent))/ab;
var k5 = (this.imageheight * this.m_percent/2)/ab;
}
var mobj = this.m_mainviewer;
return setinterval(function(){if(ab<1){
clearinterval(slider.m_delaytimer);
if(slider.m_inited){
if (!slider.m_fadein)
{
slider.m_curobj = obj.childnodes[slider.m_selidx];
slider.m_tarobj = mobj;
mobj.src = obj.childnodes[slider.m_selidx].src;
slider.m_fadein = true;
slider.m_inited = false;
slider.m_delaytimer = slider.fadein(200,10);
}else{
slider.m_fadein = false;
slider.m_inited = true;
}
}
slider.m_inited = true;
return;
}
ab--;t1-=k1;t3-=k3;t4-=k4;t5-=k5;
if (slider.m_fadein)
{
for(var i=0;i<obj.childnodes.length-1;i++)
{
obj.childnodes[i].style.left = (parseint(t1) + (slider.imagewidth + slider.m_spacewidth)*(i-slider.m_selidx))+"px";
}
}
with(mobj.style){left = t1 + "px";top = t5 + "px";width = t3 + "px";height = t4 + "px";}
}
,aa/ab)
}
}
slider.init('aaa',500,400,250,200, 0.5, 100, 20, [
"/image/1.jpg",
"/image/2.jpg",
"/image/3.jpg",
"/image/4.jpg",
"/image/5.jpg",
"/image/1.jpg",
"/image/2.jpg",
"/image/3.jpg"
]);
//-->
</script>
</body>
</html>

时间: 2024-10-27 02:44:48

a标签点击切换图片与图片切换浏览效果的相关文章

我想通过jquery实现点击导航图片后,切换到点击后的图片。

问题描述 我想通过jquery实现点击导航图片后,切换到点击后的图片. 我想通过jquery实现点击导航图片后,切换到点击后的图片,请问 哪位大神帮帮忙,能给一个 给我吗? 54033997 我QQ 解决方案 jQuery实现图片切换JQUERY实现图片切换jquery实现图片切换 解决方案二: 你这个属于轮播器,原理很简单,慢慢调试吧 解决方案三: js图片特效

标签-extjs中如何点击img图片实现图片上传

问题描述 extjs中如何点击img图片实现图片上传 在extjs中如何点击img图片实现图片上传的功能,求大神解答 var imagePanel = { name:'processImage', style:'margin-right:250px;margin-top:0px;float:right;width:80;height:75', width:80, height:75, autoEl: { tag: 'img', //指定为img标签 src: 'pages/app/educati

js-用jquery写了个图片切换效果,想让鼠标悬停图片时候图片停止切换,没有悬停则自动切换

问题描述 用jquery写了个图片切换效果,想让鼠标悬停图片时候图片停止切换,没有悬停则自动切换 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 幻灯效果 var scrollDuration = 1000;//切换速度 var timeDuration = 2

js-怎样不限制图片数量进行图片展示与切换?

问题描述 怎样不限制图片数量进行图片展示与切换? 小弟有一个问题,在jsp中实现读取mysql数据库中的所有图片进行图片展示切换, 因为水平有限,只能用模板,可是在网上找的jquery模板都是固定数量的img标签, 我想的是能不能前台只有一个img标签,但是却能在这个img位置上切换所有数据库的图片. 还有另一种思路是打开一个页面后看到一个图片切换的页面,可以切换数据库的所有图片(类似于打开百度图片,可以一幅幅的切换). 类似于这种效果,重点在于不固定数量. 解决方案 jsp不是有一个c:for

Android实现图片轮播切换实例代码_Android

利用Android的ViewFlipper和AnimationUtils实现图片带有动画的轮播切换,其中当点击"上一张"图片时,切换到上一张图片:当点击"下一张"图片时,切换到下一张图片.其效果图如下: 设置布局文件,其内容如下: activity_image_flipper_shade.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xm

原生JS实现图片轮播切换效果_javascript技巧

首先来分析一下轮播图效果的实现原理: 1.父元素作为显示窗口,大小固定超出部分隐藏,即设置overflow:hidden; 2.子元素存放图片列表用ul,ul固定定位,参照为父元素,即父元素position:relative;ul元素position:absolute; 3.一个li即一张图片的宽度为父元素的显示宽度 4.初始时,ul的left为0,这时第一张图片即第一个li显示 5.点击下一张按钮,将整个ul左移,使第二个li对齐父元素的左边框,此时ul的left为负的一个li的宽度 6.点击

Android实现点击WebView界面中图片滑动浏览与保存图片功能

一.实现需求 最近在公司的项目中遇到需求如下: 1.点击 WebView 页面的图片实现开启查看图片模式,即可以显示点击的图片,然后滑动显示下一张图片. 3.长按 WebView 页面图片弹出对话框可以选择保存长按的图片到本地相册. 拿到这个需求笔者第一反应是没做过 WebView 相关的交互,甚至分不清这个需求是否需要服务端配合完成 Java 与 JavaScript 的互相调用,一脸茫然. 遇到这种情况笔者的解决思路一般分两个方向: 1.找一个比较出名的客户端有类似功能的,然后 Google

jQuery插件slicebox实现3D动画图片轮播切换特效

 漂亮jQuery 3D动画图片轮播切换特效插件jquery.slicebox.js,基于jQuery,插件采用CSS 3D 动画效果,支持事件Callback调用,支持参数自定义配置,如:speed:600 切换速度.autoplay:true 是否自动播放,在浏览器兼容方面,需要浏览器支持CSS3变换变形属性,不支持的将看不到3D特效,推荐学习下代码. 使用方法: 1.加载插件和jQuery 1 2 3 4 <link type="text/css" rel="st

ppt怎么设置点击链接文字显示图片?

ppt怎么设置点击链接文字显示图片?   1.首先,打开PTP,找到需要链接的文字,然后选中该文字,比如图中的"趟门柜" 2.选择工具栏中的"插入",再选择"超链接",如图中所示 3.就会弹出一个插入超链接的窗口,然后我们在查找范围那里选择我们要链接的图片的路径,选择要链接的图片,在单击"确定",如图所示 4.操作完第三步之后发现,我们选择超链接的文字变颜色了,这代表我们已经链接成功 5.播放PTP,然后单击变颜色的文字,如图

js实现点击图片将图片地址复制到粘贴板的方法

 这篇文章主要介绍了js实现点击图片将图片地址复制到粘贴板的方法,涉及js操作节点的技巧,非常具有实用价值,需要的朋友可以参考下     本文实例讲述了js实现点击图片将图片地址复制到粘贴板的方法.分享给大家供大家参考.具体如下:   代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transition