js高手帮忙 下面代码如何去点鼠标点击事件

lkz99999 2012-09-19 02:28:01
/**************************************************
示例:
HTML容器:<div id="imgPlayer"></div>
PImgPlayer.addItem( "test1", "http://down.liehuo.net", "http://www.yiiker.com/images/logo1.jpg");
PImgPlayer.addItem( "test2", "http://down.liehuo.net", "http://www.yiiker.com/images/logo2.jpg");
PImgPlayer.addItem( "test3", "http://down.liehuo.net", "http://www.yiiker.com/images/logo3.jpg");
PImgPlayer.init( "imgPlayer", 200, 230 );
***************************************************/
var PImgPlayer = {
_timer : null,
_items : [],
_container : null,
_index : 0,
_imgs : [],
intervalTime : 8000,//轮播间隔时间
init : function( objID, w, h, time )
{

this.intervalTime = time || this.intervalTime;
this._container = document.getElementById( objID );
this._container.style.display = "block";
this._container.style.width = w + "px";
this._container.style.height = h + "px";
this._container.style.position = "relative";
this._container.style.overflow = "hidden";

//this._container.style.border = "1px solid #fff";
var linkStyle = "display: block; TEXT-DECORATION: none;";
if( document.all )
{
linkStyle += "FILTER:";
linkStyle += "progid:DXImageTransform.Microsoft.Wipe(duration=1, motion='forward', GradientSize=1.0) ";
}

var ulStyle = "margin:0;width:"+w+"px;position:absolute;z-index:999;right:5px;FILTER:Alpha(Opacity=20,FinishOpacity=90, Style=1);overflow: hidden;bottom:5px;height:16px; border-right:0";

var liStyle = "margin:0;list-style-type: none; margin:0;padding:0; float:right;";

var baseSpacStyle = "clear:both; display:block; width:23px;line-height:16px; font-size:12px; FONT-FAMILY:'宋体';opacity: 0.6;margin:2px;";
baseSpacStyle += "border:0;border-right:0;border-bottom:0;";
baseSpacStyle += "color:#fff;text-align:center; cursor:pointer; ";

var ulHTML = "";
for(var i = this._items.length -1; i >= 0; i--)
{
var spanStyle = "";
if( i==this._index )
{
spanStyle = baseSpacStyle + "background:#00a889;";
}
else {
spanStyle = baseSpacStyle + "background:#4e4e4e;";
}
ulHTML += "<li style=\""+liStyle+"\">";
ulHTML += "<span onmouseover=\"PImgPlayer.mouseOver(this);\" onmouseout=\"PImgPlayer.mouseOut(this);\" style=\""+spanStyle+"\" onclick=\"PImgPlayer.play("+i+");return false;\" herf=\"javascript:;\" title=\"" + this._items[i].title + "\">" + (i+1) + "</span>";
ulHTML += "</li>";
}

// var html = "<a href=\""+this._items[this._index].link+"\" title=\""+this._items[this._index].title+"\" target=\"_blank\" style=\""+linkStyle+"\"></a><ul style=\""+ulStyle+"\">"+ulHTML+"</ul>";

var html = ""+this._items[this._index].link+"\" title=\""+this._items[this._index].title+"\" target=\"_blank\" style=\""+linkStyle+"\""<ul style=\""+ulStyle+"\">"+ulHTML+"</ul>";

// var html = "++" <ul style=\""+ulStyle+"\">"+ulHTML+"</ul>";
// alert(html);

this._container.innerHTML = html;
var link = this._container.getElementsByTagName("A")[0];
link.style.width = w + "px";
link.style.height = h + "px";
link.style.background = 'url(' + this._items[0].img + ') no-repeat center center';

this._timer = setInterval( "PImgPlayer.play()", this.intervalTime );
},

addItem : function( _title, _link, _imgURL )
{
this._items.push ( {title:_title, link:_link, img:_imgURL } );
var img = new Image();
img.src = _imgURL;
this._imgs.push( img );
},

play : function( index )
{
if( index!=null )
{
this._index = index;
clearInterval( this._timer );
this._timer = setInterval( "PImgPlayer.play()", this.intervalTime );
}
else {
this._index = this._index<this._items.length-1 ? this._index+1 : 0;
}
var link = this._container.getElementsByTagName("A")[0];
if(link.filters)
{
var ren = Math.floor(Math.random()*(link.filters.length));
link.filters[ren].Apply();
link.filters[ren].play();
}
link.href = this._items[this._index].link;
link.title = this._items[this._index].title;
link.style.background = 'url(' + this._items[this._index].img + ') no-repeat center center';

var liStyle = "margin:0;list-style-type: none; margin:0;padding:0; float:right;";
var baseSpacStyle = "clear:both; display:block; width:23px;line-height:16px; font-size:12px; FONT-FAMILY:'宋体'; opacity: 0.6;margin:2px;";
baseSpacStyle += "border:0;border-right:0;border-bottom:0;";
baseSpacStyle += "color:#fff;text-align:center; cursor:pointer; ";
var ulHTML = "";
for(var i = this._items.length -1; i >= 0; i--)
{
var spanStyle = "";
if( i==this._index )
{
spanStyle = baseSpacStyle + "background:#00a889;";
}
else {
spanStyle = baseSpacStyle + "background:#4e4e4e;";
}
ulHTML += "<li style=\""+liStyle+"\">";
ulHTML += "<span onmouseover=\"PImgPlayer.mouseOver(this);\" onmouseout=\"PImgPlayer.mouseOut(this);\" style=\""+spanStyle+"\" onclick=\"PImgPlayer.play("+i+");return false;\" herf=\"javascript:;\" title=\"" + this._items[i].title + "\">" + (i+1) + "</span>";
ulHTML += "</li>";
}
this._container.getElementsByTagName("UL")[0].innerHTML = ulHTML;
},

mouseOver : function(obj)
{
var i = parseInt( obj.innerHTML );
if( this._index!=i-1)
{
obj.style.color = "#00a889";
}
},

mouseOut : function(obj)
{
obj.style.color = "#fff";
}
}
...全文
298 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
老王@上新路 2012-09-20
  • 打赏
  • 举报
回复
$("#id").remove("onclick")
lkz99999 2012-09-20
  • 打赏
  • 举报
回复
还就是 鼠标事件 放到图片上时图片会闪动一下 如何去掉
lkz99999 2012-09-20
  • 打赏
  • 举报
回复
改变了参数 将 target=\"_blank\"属性删除 果然好了 谢谢了
lkz99999 2012-09-20
  • 打赏
  • 举报
回复
非常感谢 高手
泡泡鱼_ 2012-09-19
  • 打赏
  • 举报
回复
完整示例代码如下:
<script type="text/javascript">
var PImgPlayer = {
_timer : null,
_items : [],
_container : null,
_index : 0,
_imgs : [],
intervalTime : 8000,//轮播间隔时间
init : function( objID, w, h, time ){
this.intervalTime = time || this.intervalTime;
this._container = document.getElementById( objID );
this._container.style.display = "block";
this._container.style.width = w + "px";
this._container.style.height = h + "px";
this._container.style.position = "relative";
this._container.style.overflow = "hidden";
//this._container.style.border = "1px solid #fff";
var linkStyle = "display: block; TEXT-DECORATION: none;";
if( document.all){
linkStyle += "FILTER:";
linkStyle += "progid:DXImageTransform.Microsoft.Wipe(duration=1, motion='forward', GradientSize=1.0) ";
}
var ulStyle = "margin:0;width:"+w+"px;position:absolute;z-index:999;right:5px;FILTER:Alpha(Opacity=20,FinishOpacity=90, Style=1);overflow: hidden;bottom:5px;height:16px; border-right:0";
var liStyle = "margin:0;list-style-type: none; margin:0;padding:0; float:right;";
var baseSpacStyle = "clear:both; display:block; width:23px;line-height:16px; font-size:12px; FONT-FAMILY:'宋体';opacity: 0.6;margin:2px;";
baseSpacStyle += "border:0;border-right:0;border-bottom:0;";
baseSpacStyle += "color:#fff;text-align:center; cursor:pointer; ";
var ulHTML = "";
for(var i = this._items.length -1; i >= 0; i--){
var spanStyle = "";
if( i==this._index ){
spanStyle = baseSpacStyle + "background:#00a889;";
}else {
spanStyle = baseSpacStyle + "background:#4e4e4e;";
}
ulHTML += "<li style=\""+liStyle+"\">";
ulHTML += "<span onmouseover=\"PImgPlayer.mouseOver(this);\" onmouseout=\"PImgPlayer.mouseOut(this);\" style=\""+spanStyle+"\" onclick=\"PImgPlayer.play("+i+");return false;\" herf=\"javascript:;\" title=\"" + this._items[i].title + "\">" + (i+1) + "</span>";
ulHTML += "</li>";
}
var html = "<a href=\""+this._items[this._index].link+"\" title=\""+this._items[this._index].title+"\" style=\""+linkStyle+"\"></a><ul style=\""+ulStyle+"\">"+ulHTML+"</ul>";
this._container.innerHTML = html;
var link = this._container.getElementsByTagName("A")[0];
link.style.width = w + "px";
link.style.height = h + "px";
link.style.background = 'url(' + this._items[0].img + ') no-repeat center center';

this._timer = setInterval( "PImgPlayer.play()", this.intervalTime );
},

addItem:function( _title,_link,_imgURL ){
this._items.push ( {title:_title, link:_link, img:_imgURL } );
var img = new Image();
img.src = _imgURL;
this._imgs.push( img );
},

play : function( index ){
if( index!=null){
this._index = index;
clearInterval( this._timer );
this._timer = setInterval( "PImgPlayer.play()", this.intervalTime );
}else{
this._index = this._index<this._items.length-1 ? this._index+1 : 0;
}
var link = this._container.getElementsByTagName("A")[0];
if(link.filters){
var ren = Math.floor(Math.random()*(link.filters.length));
link.filters[ren].Apply();
link.filters[ren].play();
}
link.href = this._items[this._index].link;
link.title = this._items[this._index].title;
link.style.background = 'url(' + this._items[this._index].img + ') no-repeat center center';
var liStyle = "margin:0;list-style-type: none; margin:0;padding:0; float:right;";
var baseSpacStyle = "clear:both; display:block; width:23px;line-height:16px; font-size:12px; FONT-FAMILY:'宋体'; opacity: 0.6;margin:2px;";
baseSpacStyle += "border:0;border-right:0;border-bottom:0;";
baseSpacStyle += "color:#fff;text-align:center; cursor:pointer; ";
var ulHTML = "";
for(var i = this._items.length -1; i >= 0; i--){
var spanStyle = "";
if( i==this._index ){
spanStyle = baseSpacStyle + "background:#00a889;";
}else {
spanStyle = baseSpacStyle + "background:#4e4e4e;";
}
ulHTML += "<li style=\""+liStyle+"\">";
ulHTML += "1<span onmouseover=\"PImgPlayer.mouseOver(this);\" onmouseout=\"PImgPlayer.mouseOut(this);\" style=\""+spanStyle+"\" onclick=\"PImgPlayer.play("+i+");return false;\" herf=\"javascript:;\" title=\"" + this._items[i].title + "\">" + (i+1) + "</span>";
ulHTML += "</li>";
}
this._container.getElementsByTagName("UL")[0].innerHTML = ulHTML;
},

mouseOver:function(obj){
var i = parseInt( obj.innerHTML );
if( this._index!=i-1){
obj.style.color = "#00a889";
}
},
mouseOut : function(obj){
obj.style.color = "#fff";
}
}
window.onload=function(){
PImgPlayer.addItem( "test1", "javascript:void(0)", "b/1.jpg");
PImgPlayer.addItem( "test2", "javascript:void(0)", "b/2.jpg");
PImgPlayer.addItem( "test3", "javascript:void(0)", "b/3.jpg");
PImgPlayer.init( "imgPlayer", 200, 230 );
}
<script>
<div id="imgPlayer"></div>
泡泡鱼_ 2012-09-19
  • 打赏
  • 举报
回复
我晕你,点击图片会弹出网页,这算什么点击事件???那是由你给出的参数造成的
PImgPlayer.addItem( "test1", "http://down.liehuo.net", "b/1.jpg");
第二个参数就是点击图片后的超链接地址,你不想弹出网页
1:改变一下参数
PImgPlayer.addItem( "test1", "javascript:void(0);", "b/1.jpg");
2:找到你说的这行
var html = "<a href=\""+this._items[this._index].link+"\" title=\""+this._items[this._index].title+"\" target=\"_blank\" style=\""+linkStyle+"\"></a><ul style=\""+ulStyle+"\">"+ulHTML+"</ul>";

将 target=\"_blank\"删除
泡泡鱼_ 2012-09-19
  • 打赏
  • 举报
回复
你到底是想去掉什么点击事件??是图片列表的索引那些数字上的点击事件???
lkz99999 2012-09-19
  • 打赏
  • 举报
回复
那位大侠给小弟留个QQ指导下 js是在让人头痛 还不能跟踪 郁闷
lkz99999 2012-09-19
  • 打赏
  • 举报
回复
去掉onclick=\"PImgPlayer.play("+i+");return false;\" 点击事件还是可以点击 之后弹出页面


还有<a></> 我上面的代码注释了 开始还以为是超链接的缘故 可是去掉a标记就报错 或不显示图片

var html = "<a href=\""+this._items[this._index].link+"\" title=\""+this._items[this._index].title+"\" target=\"_blank\" style=\""+linkStyle+"\"></a><ul style=\""+ulStyle+"\">"+ulHTML+"</ul>";
泡泡鱼_ 2012-09-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
onclick=\"PImgPlayer.play("+i+");return false;\" 这段取消不就好了?
[/Quote]
汗~~~ 去掉这个
原來我不帥 2012-09-19
  • 打赏
  • 举报
回复
onclick=\"PImgPlayer.play("+i+");return false;\" 这段取消不就好了?
lkz99999 2012-09-19
  • 打赏
  • 举报
回复
我想去掉点击事件 现在点击图片会弹出网页,我想把这功能去掉

ulHTML += "<span onclick="PImgPlayer.click(this);" onmouseover=\"PImgPlayer.mouseOver(this);\" onmouseout=\"PImgPlayer.mouseOut(this);\" style=\""+spanStyle+"\" onclick=\"PImgPlayer.play("+i+");return false;\" herf=\"javascript:;\" title=\"" + this._items[i].title + "\">" + (i+1) + "</span>";

onclick onmouseover 去掉不知道为什么还是可以点击弹出网页
lkz99999 2012-09-19
  • 打赏
  • 举报
回复
我就是想去掉鼠标点击事件
泡泡鱼_ 2012-09-19
  • 打赏
  • 举报
回复
添加点击事件???下面的语句中修改成如下
ulHTML += "<span onclick="PImgPlayer.click(this);" onmouseover=\"PImgPlayer.mouseOver(this);\" onmouseout=\"PImgPlayer.mouseOut(this);\" style=\""+spanStyle+"\" onclick=\"PImgPlayer.play("+i+");return false;\" herf=\"javascript:;\" title=\"" + this._items[i].title + "\">" + (i+1) + "</span>";


然后对应的添加click方法,比如在mouseOut : function(obj)前添加

click : function(obj){
//你的操作
alert(o.innerHTML);
},

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧