`
Angelialily
  • 浏览: 241725 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

鼠标移动到图片上显示大图

阅读更多
万能的标签属性alt 推荐大家使用。
这次我用alt属性实现的是 鼠标移动到图片上显示大图。
不说了还是发来代码吧~ 希望能帮到需要帮助的人。
<script type="text/javascript">
var cfg_fade_switch=true;      
var cfg_xoffset=9;        
var cfg_yoffset=20;       
var cfg_mouse_follow=true;
var cfg_hide_delay=3000;   
var cfg_txt_tag='alt';
var cfg_is_show=true;
var cfg_tags = new Array("select","a","area","b","big","caption","center","code","dd","div","dl","dt","em","h1","h2","h3","h4","h5","h6","i","img","input","li","map","ol","p","pre","s","small","span","strike","strong","sub","sup","table","td","th","tr","tt","u","var","ul","layer");

document.write("<style>.navtext_div{PADDING-RIGHT: 6px; PADDING-LEFT: 6px;PADDING-TOP: 2px; PADDING-BOTTOM: 1px; FONT-SIZE: 12px; Z-INDEX: 99; VISIBILITY: hidden; COLOR: #333333; BORDER: 1px #8899AA dashed;FONT-FAMILY: Courier New,tahoma,arial; POSITION: absolute; BACKGROUND-COLOR: #FFFFCC;}</style>");
document.write('<div id="navtext_div" class="navtext_div" style="visibility:hidden; position:absolute; top:0px; left:-400px; z-index:10000; padding:3px"></div>');

function xalt_props(){
    this.w3c=(document.getElementById)?true:false;
    this.ns4=(document.layers)?true:false;
    this.ie4=(document.all && !this.w3c)?true:false;
    this.ie5=(document.all && this.w3c)?true:false;
    this.ns6=(this.w3c && navigator.appName.indexOf("Netscape")>=0 )?true:false;
    this.w_y=0;
    this.w_x=0;
    this.navtxt=null;
    this.boxheight=0;
    this.boxwidth=0;
    this.ishover=true;
    this.ieop=0;
    this.op_id=0;
    this.oktomove=true;
    this.dy=0;
}
function xalt_kill_errors() {
    return true;
}

var XALT=new xalt_props();

function xalt_set_mouse_follow(mouse_follow){//true or false
    cfg_mouse_follow=mouse_follow;
}

function xalt_set_fade_switch(fade_switch){//true or false
    cfg_fade_switch=fade_switch;
    if(!cfg_fade_switch)XALT.ieop=100;
}

function xalt_get_window_dims(){
    XALT.w_y=(XALT.ie5||XALT.ie4)?document.body.clientHeight:window.innerHeight;
    XALT.w_x=(XALT.ie5||XALT.ie4)?document.body.clientWidth:window.innerWidth;
}

function xalt_get_box_width(){
    if(XALT.ns4)XALT.boxwidth=(XALT.navtxt.document.width)? XALT.navtxt.document.width : XALT.navtxt.clip.width;
    else if(XALT.ie4)XALT.boxwidth=(XALT.navtxt.style.pixelWidth)? XALT.navtxt.style.pixelWidth : XALT.navtxt.offsetWidth;
    else XALT.boxwidth=(XALT.navtxt.style.width)? parseInt(XALT.navtxt.style.width) : parseInt(XALT.navtxt.offsetWidth);
}

function xalt_get_box_height(){
    if(XALT.ns4)XALT.boxheight=(XALT.navtxt.document.height)? XALT.navtxt.document.height : XALT.navtxt.clip.height;
    else if(XALT.ie4)XALT.boxheight=(XALT.navtxt.style.pixelHeight)? XALT.navtxt.style.pixelHeight : XALT.navtxt.offsetHeight;
    else XALT.boxheight=parseInt(XALT.navtxt.offsetHeight);
}

function xalt_move_nav_txt(x,y){
    if(XALT.ns4){
        XALT.navtxt.moveTo(x,y);
    }else{
        XALT.navtxt.style.left=x+'px';
        XALT.navtxt.style.top=y+'px';
    }
}

function xalt_get_page_scrolly(){
    if(XALT.ie5||XALT.ie4){
        if(document.documentElement.scrollTop > 0) return document.documentElement.scrollTop;
        return document.body.scrollTop;
    }else return window.pageYOffset;
}

function xalt_get_page_scrollx(){
    if(XALT.ie5||XALT.ie4){
        if(document.documentElement.scrollLeft > 0) return document.documentElement.scrollLeft;
        return document.body.scrollLeft;
    }else return window.pageXOffset;
}

function xalt_write_in_div(text){
    if(XALT.ns4){
        XALT.navtxt.document.open();
        XALT.navtxt.document.write(text);
        XALT.navtxt.document.close();
    }
    else XALT.navtxt.innerHTML=text;
}

function xalt_write_txt(text){
    if(cfg_fade_switch && (XALT.ie4||XALT.w3c))clearInterval(XALT.op_id);
    if(text!=0 && cfg_is_show ){
        if(!cfg_mouse_follow)clearTimeout(XALT.dy);
        XALT.oktomove=true;
        XALT.ishover=true;
        if(XALT.ns4)text='<div class="navtext_div">'+text+''+'</div>';
        if(XALT.w3c||XALT.ie4)XALT.navtxt.style.textAlign="left";
        xalt_write_in_div(text);
        if(XALT.ns4)XALT.navtxt.visibility="show";
        else{
            //XALT.navtxt.style.display="inline";
            XALT.navtxt.style.visibility="visible";
        }
        xalt_get_box_height();
        if((XALT.w3c||XALT.ie4) && cfg_fade_switch){
            if(XALT.ie4||XALT.ie5)XALT.navtxt.style.filter="alpha(opacity=0)";
            if(XALT.ns6)XALT.navtxt.style.MozOpacity=0;
            XALT.ieop=0;
            XALT.op_id=setInterval('xalt_do_opacity()',10);
        }
        cfg_is_show=false;
    }else{
        cfg_is_show=true;
        if(cfg_mouse_follow)xalt_hide_alt_txt();
        else XALT.dy=setTimeout('xalt_hide_alt_txt()',cfg_hide_delay);
    }
}

function xalt_hide_alt_txt(){
    if(XALT.ns4)XALT.navtxt.visibility="hide";
    else{
        //XALT.navtxt.style.display="none";
        XALT.navtxt.style.visibility="hidden";
    }
    xalt_move_nav_txt(-XALT.boxwidth-10,0);
    xalt_write_in_div('');
}

function xalt_do_opacity(){
    if(XALT.ieop<=100){
    XALT.ieop+=32;
    if(XALT.ie4||XALT.ie5)XALT.navtxt.style.filter="alpha(opacity="+XALT.ieop+")";
    if(XALT.ns6)XALT.navtxt.style.MozOpacity=XALT.ieop/100;
    }else clearInterval(XALT.op_id);
}

function xalt_move_obj(evt){
    mx=(XALT.ie5||XALT.ie4)?event.clientX:evt.pageX;
    my=(XALT.ie5||XALT.ie4)?event.clientY:evt.pageY;
    if(XALT.ishover && XALT.oktomove){
        margin=(XALT.ie4||XALT.ie5)?5:25;
        if(XALT.ns6)if(document.height+27-window.innerHeight<0)margin=15;
        if(XALT.ns4)if(document.height-window.innerHeight<0)margin=10;
        if(XALT.ns4||XALT.ns6)mx-=xalt_get_page_scrollx();
        if(XALT.ns4)my-=xalt_get_page_scrolly();
        xoff=mx+cfg_xoffset;
        yoff=(my+XALT.boxheight+cfg_yoffset-((XALT.ns6)?xalt_get_page_scrolly():0)>=XALT.w_y)? -5-XALT.boxheight-cfg_yoffset: cfg_yoffset;
        xalt_move_nav_txt( Math.min(XALT.w_x-XALT.boxwidth-margin , Math.max(2,xoff))+xalt_get_page_scrollx(), my+yoff+((!XALT.ns6)?xalt_get_page_scrolly():0));
        if(!cfg_mouse_follow)XALT.oktomove=false;
    }
}
function xalt_ns4_tags(tag_type, t_d, t_y){
    t_d = t_d || document;
    t_y = t_y || new Array();
    var t_x = (tag_type=="a")? t_d.links : t_d.layers;
    for(var z = t_x.length; z--;) t_y[t_y.length] = t_x[z];
    for(var z = t_d.layers.length; z--;) t_y = xalt_ns4_tags(tag_type, t_d.layers[z].document, t_y);
    return t_y;
}

function xalt_onload(){
    window.onerror = xalt_kill_errors;
    if (!(XALT.w3c || XALT.ns4 || XALT.ie4 || XALT.ie5 || XALT.ns6)) return;
    if(XALT.ns4||XALT.ns6){
        window.document.captureEvents(Event.MOUSEMOVE);
        window.document.addEventListener("mousemove", xalt_move_obj, true);
        window.document.addEventListener("resize", xalt_get_window_dims, true);
    }else if(XALT.ie4||XALT.ie5||XALT.w3c){
        window.document.attachEvent("onmousemove", xalt_move_obj);
        window.document.attachEvent("onresize", xalt_get_window_dims);
    }
    XALT.navtxt=(XALT.ns4)?document.layers['navtext_div']:(XALT.ie4)?document.all['navtext_div']:(XALT.w3c)?document.getElementById('navtext_div'):null;
    xalt_get_box_width();
    xalt_get_box_height();
    xalt_get_window_dims();
    if(XALT.ie4||XALT.ie5&&cfg_fade_switch)XALT.navtxt.style.filter="alpha(opacity=100)";
    var i = cfg_tags.length, tags;
    while(i--){
        tags = (XALT.ie4 || XALT.ie5) ? (document.all.tags(cfg_tags[i]) || 1)
            : document.getElementsByTagName? (document.getElementsByTagName(cfg_tags[i]) || 1)
            : (!XALT.ns4 && cfg_tags[i]=="a")? document.links
            : 1;
        if (XALT.ns4 && (cfg_tags[i] == "a" || cfg_tags[i] == "layer")) tags = xalt_ns4_tags(cfg_tags[i]);
        var j = tags.length;
        while(j--){
            var txt = tags[j].getAttribute(cfg_txt_tag);
            if (tags[j].alt) tags[j].alt = "";//屏蔽默认的ALT标签
            //if (tags[j].title) tags[j].title = "";
            if(txt != null && txt != ''){
                tags[j].setAttribute('xalt_txt', txt);
                tags[j].setAttribute(cfg_txt_tag, '');
                tags[j].onmouseover = function() {
                    xalt_write_txt(this.getAttribute('xalt_txt'));
                    if(!cfg_mouse_follow)XALT.dy=setTimeout('xalt_hide_alt_txt()',cfg_hide_delay);
                }
                tags[j].onmouseout = function() {
                    xalt_write_txt(0);
                    if(!cfg_mouse_follow)clearTimeout(XALT.dy);
                }

            }
        }
    }
}

if(XALT.ns4||XALT.ns6){
    window.addEventListener("load", xalt_onload, true);
}else if(XALT.ie4||XALT.ie5||XALT.w3c){
     window.attachEvent("onload", xalt_onload);
}
<script>
html使用alt代码:
<img alt="<img src='www.baidu.com'/>" src='www.baidu.com'/>

就这么简单 只要加上alt属性就能实现你想实现的功能, 轻而易举!
2
0
分享到:
评论
4 楼 少女杀手 2009-07-17  
playfish 写道
汗。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
这样一个功能写了这么长的函数太汗了。。。还不如绝对定位一个层来实现呢。。

我觉得这样就不灵活了啊!

楼主的这个确实不错。但是用Jquery更好!效果更好看!
3 楼 hifun 2008-09-07  
JS 还真的不懂饿。
那么长的代码,这个好用吗?
2 楼 Jason(aijun) 2008-09-04  
作个朋友吧!
1 楼 playfish 2008-09-03  
汗。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
这样一个功能写了这么长的函数太汗了。。。还不如绝对定位一个层来实现呢。。

相关推荐

    jquery实现鼠标移动到图片上显示大图广告代码

    本篇文章将详细介绍如何利用jQuery来实现在鼠标移动到图片上时,显示大图广告的效果,当鼠标移开时,图片则会恢复原状。 首先,我们需要了解jQuery的基本用法。jQuery是一个轻量级的JavaScript库,它简化了DOM操作...

    jquery实现鼠标移动到图片上显示大图广告代码.zip

    本项目“jquery实现鼠标移动到图片上显示大图广告代码”提供了一种实现这一功能的方法,尤其适用于电商等需要突出商品细节的网站。下面我们将详细探讨这一技术的实现原理和步骤。 首先,jQuery 是一个广泛使用的 ...

    C#winform移动鼠标浮现图片

    在这个场景中,我们可能有一个图像或按钮控件作为触发器,当鼠标移到该控件上方时,显示图片。首先,添加一个PictureBox控件,用于展示浮出的图片。这个PictureBox可以设置为透明或者半透明,以便不影响背景的显示。...

    来自国外的一款放大图片的鼠标提示特效 一款鼠标提示效果,类似于放大图片,鼠标移到对应图片上,会显示出大图,能根据浏览器的显示距离将提示的图片显示在正确的位置上,把浏览器窗口调小就可以看到效果了。Js代码里的cImg.setAttribute('id','bigPic');这一句,就是调用对应大图用的,你可以把小图和大图放在同一个目录中,只需更改此句就可调用对应的大图。

    1. **监听鼠标移动事件**:使用JavaScript的`addEventListener`方法添加事件监听器,监听`mouseover`事件,当鼠标进入图片区域时触发。 2. **获取图片元素**:通过ID(例如`document.getElementById('bigPic')`)...

    鼠标移动到图片上显示图片提示效果

    在网页设计中,实现“鼠标移动到图片上显示图片提示效果”是一种常见的用户体验优化技术,通常被称为“悬停提示”或“tooltip”。这种效果能够提供额外的信息,帮助用户更好地理解图片内容,尤其在空间有限或者需要...

    CSS鼠标移上去显示大图

    总的来说,"CSS鼠标移上去显示大图"是一个实用的网页交互设计技巧,通过CSS的`:hover`伪类和适当的布局,可以为用户提供直观且有趣的图片查看体验。这个技巧在电商网站、博客和其他需要展示详细图像信息的平台中非常...

    Js 鼠标移上去,大图显示。。

    【标题】"Js 鼠标移上去,大图显示" 涉及的技术知识点主要集中在JavaScript和网页交互上,这种效果通常用于图片预览功能,用户将鼠标悬停在小图上时,会显示出相应的大图。下面将详细介绍这个过程中的关键技术和实现...

    jquery 鼠标经过显示大图

    标题“jquery 鼠标经过显示大图”指的是在网页中使用jQuery库实现一个功能,当鼠标悬停在某个图片上时,展示该图片的放大版本。这种效果常见于产品展示或者图片预览中,可以提供用户更好的视觉体验。下面我们将深入...

    jquery实现鼠标移动到方格图片上图片放大功能

    "jQuery 实现鼠标移动到方格图片上图片放大功能"是一种常见的交互效果,它可以让用户在浏览一组方格排列的图片时,只需将鼠标悬停在某张图片上,该图片就能自动放大并全屏展示,提供更清晰的细节查看。这种效果可以...

    鼠标移上去显示大图的JS特效

    js制作的鼠标移到小图上显示大图的特效。 1、渐变显示大图。 2、自动调整大图显示的位置。 3、给小图片加上代码: 4、css修改样式。

    js鼠标悬停到图片上显示文字详情效果

    在JavaScript(JS)编程中,实现“鼠标悬停到图片上显示文字详情效果”是一种常见的交互设计技术,它能够提升用户体验,使用户更容易理解图片所代表的信息。这种效果通常是通过结合HTML、CSS以及JavaScript来实现的...

    JQuery 鼠标移到小图上显示大图

    在网页设计中,"JQuery 鼠标移到小图上显示大图"是一种常见的交互效果,用于增强用户体验。这个效果通常应用于商品展示或者图片预览,用户将鼠标悬停在缩略图(小图)上时,会弹出一个预览窗口显示对应的全尺寸图片...

    鼠标移动到链接就显示图片

    综上所述,“鼠标移动到链接就显示图片”这一功能涉及到多方面的技术应用,包括HTML布局、CSS样式控制、JavaScript事件处理以及用户体验和可访问性的考量。通过这些技术的结合,我们可以创建出既实用又美观的交互...

    鼠标移上去显示大图的代码

    在网页设计中,"鼠标移上去显示大图的代码"是一种常见的交互效果,通常用于图片预览或产品展示。这种效果能够提升用户体验,使用户在不离开当前页面的情况下就能查看到图片的详细内容。实现这一功能,我们可以使用...

    Jquery鼠标移小图显示大图

    当鼠标移到小图上时,显示大图,离开时则隐藏: ```javascript $(document).ready(function() { $('.thumbnail').on('mouseenter', function() { var bigSrc = $(this).data('big-src'); $('.big-image').attr('...

    鼠标移动到图片上旋转显示大图的jQuery图片特效

    在网页设计中,为了提升用户体验,常常会使用各种视觉效果,其中一种常见且吸引人的特效就是"鼠标移动到图片上旋转显示大图"。这种jQuery图片特效能够使用户在悬停鼠标时,图片不仅放大,还能进行旋转,为网站增添...

    CSS实现的鼠标移动到图片上显示文字说明内容

    本篇将详细介绍如何利用CSS来实现在鼠标移动到图片上时,自动显示图片的文字说明。 首先,我们需要创建HTML结构,通常我们会为每张图片定义一个`&lt;img&gt;`标签,并在其后添加一个用于显示文字说明的`&lt;div&gt;`元素。例如...

    鼠标图片时滑过显示大图效果

    在网页设计中,"鼠标图片时滑过显示大图效果"是一种常见的交互设计技术,它提高了用户的浏览体验,使得用户可以快速预览图片的详细内容。这种效果通常应用于产品展示、相册展示或者任何需要对图片进行预览的场景。在...

    JavaScript实现鼠标移到地图上显示实际地理坐标

    本教程将深入探讨如何利用SuperMap iClient 6R for JavaScript库来实现一个功能,即当鼠标移动到地图上时,实时显示当前鼠标的地理坐标。SuperMap是一款强大的GIS软件,其iClient系列为开发者提供了丰富的JavaScript...

    jquery鼠标移到Image上方时显示文字效果

    本示例中,我们关注的是一个基于jQuery实现的图片特效,即“鼠标移到Image上方时显示文字效果”。这个功能是通过结合jQuery事件监听器和CSS样式来创建的,当用户将鼠标悬停在图片上时,会在图片底部显示相关信息,...

Global site tag (gtag.js) - Google Analytics