• [转]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>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>右下角带编号JS焦点图滚动切换效果</title>
    <style type="text/css">
    /* Reset style */
    * { margin:0; padding:0; }
    body { background:#FFF; color:#333; font:12px/1.6em Helvetica, Arial, sans-serif; }
    h1, h2, h3, h4, h5, h6 { font-size:1em; }
    a { color:#0287CA; text-decoration:none; }
    a:hover { text-decoration:underline; }
    ul, li { list-style:none; }
    fieldset, img { border:none; }
    legend { display:none; }
    em, strong, cite, th { font-style:normal; font-weight:normal; }
    input, textarea, select, button { font:12px Helvetica, Arial, sans-serif; }
    table { border-collapse:collapse; }
    html { overflow:-moz-scrollbars-vertical; } /*Always show Firefox scrollbar*/
    /* iBanner style */
    #ibanner { position:relative; 280px; height:262px; overflow:hidden; margin:0; }
    #ibanner_pic {}
    #ibanner_pic a { position:absolute; top:0; display:block; 280px; height:262px; overflow:hidden; }
    #ibanner_btn { position:absolute; z-index:9999; right:5px; bottom:5px; font-weight:700; font-family:Arial; }
    #ibanner_btn span { display:block; float:left; margin-left:4px; padding:0 5px; background:#000; cursor:pointer; }
    #ibanner_btn .normal { height:20px; margin-top:8px; border:1px solid #999; color:#999; font-size:16px; line-height:20px; }
    #ibanner_btn .current { height:28px; border:1px solid #FF5300; color:#FF5300; font-size:28px; line-height:28px; }
    </style>
    <script type="text/javascript">
    function $(id) { return document.getElementById(id); }
    function addLoadEvent(func){
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
    window.onload = func;
    } else {
    window.onload = function(){
       oldonload();
       func();
    }
    }
    }
    function addBtn() {
    if(!$('ibanner')||!$('ibanner_pic')) return;
    var picList = $('ibanner_pic').getElementsByTagName('a');
    if(picList.length==0) return;
    var btnBox = document.createElement('div');
    btnBox.setAttribute('id','ibanner_btn');
    var SpanBox ='';
    for(var i=1; i<=picList.length; i++ ) {
    var spanList = '<span class="normal">'+i+'</span>';
    SpanBox += spanList;
    }
    btnBox.innerHTML = SpanBox;
    $('ibanner').appendChild(btnBox);
    $('ibanner_btn').getElementsByTagName('span')[0].className = 'current';
    for (var m=0; m<picList.length; m++){
    var attributeValue = 'picLi_'+m
    picList[m].setAttribute('id',attributeValue);
    }
    }
    function moveElement(elementID,final_x,final_y,interval) {
    if (!document.getElementById) return false;
    if (!document.getElementById(elementID)) return false;
    var elem = document.getElementById(elementID);
    if (elem.movement) {
    clearTimeout(elem.movement);
    }
    if (!elem.style.left) {
    elem.style.left = "0px";
    }
    if (!elem.style.top) {
    elem.style.top = "0px";
    }
    var xpos = parseInt(elem.style.left);
    var ypos = parseInt(elem.style.top);
    if (xpos == final_x && ypos == final_y) {
    moveing = false;
    return true;
    }
    if (xpos < final_x) {
        var dist = Math.ceil((final_x - xpos)/10);
        xpos = xpos + dist;
    }
    if (xpos > final_x) {
        var dist = Math.ceil((xpos - final_x)/10);
        xpos = xpos - dist;
    }
    if (ypos < final_y) {
        var dist = Math.ceil((final_y - ypos)/10);
        ypos = ypos + dist;
    }
    if (ypos > final_y) {
        var dist = Math.ceil((ypos - final_y)/10);
        ypos = ypos - dist;
    }
    elem.style.left = xpos + "px";
    elem.style.top = ypos + "px";
    var repeat = "moveElement('"+elementID+"',"+final_x+","+final_y+","+interval+")";
    elem.movement = setTimeout(repeat,interval);
    }
    function classNormal() {
    var btnList = $('ibanner_btn').getElementsByTagName('span');
    for (var i=0; i<btnList.length; i++){
    btnList[i].className='normal';
    }
    }
    function picZ() {
    var picList = $('ibanner_pic').getElementsByTagName('a');
    for (var i=0; i<picList.length; i++){
    picList[i].style.zIndex='1';
    }
    }
    var autoKey = false;
    function iBanner() {
    if(!$('ibanner')||!$('ibanner_pic')||!$('ibanner_btn')) return;
    $('ibanner').onmouseover = function(){autoKey = true};
    $('ibanner').onmouseout = function(){autoKey = false};
    var btnList = $('ibanner_btn').getElementsByTagName('span');
    var picList = $('ibanner_pic').getElementsByTagName('a');
    if (picList.length==1) return;
    picList[0].style.zIndex='2';
    for (var m=0; m<btnList.length; m++){
    btnList[m].onmouseover = function() {
       for(var n=0; n<btnList.length; n++) {
        if (btnList[n].className == 'current') {
         var currentNum = n;
        }
       }
       classNormal();
       picZ();
       this.className='current';
       picList[currentNum].style.zIndex='2';
       var z = this.childNodes[0].nodeValue-1;
       picList[z].style.zIndex='3';
       if (currentNum!=z){
        picList[z].style.left='282px';
        moveElement('picLi_'+z,0,0,10);
       }
    }
    }
    }
    setInterval('autoBanner()', 5000);
    function autoBanner() {
    if(!$('ibanner')||!$('ibanner_pic')||!$('ibanner_btn')||autoKey) return;
    var btnList = $('ibanner_btn').getElementsByTagName('span');
    var picList = $('ibanner_pic').getElementsByTagName('a');
    if (picList.length==1) return;
    for(var i=0; i<btnList.length; i++) {
    if (btnList[i].className == 'current') {
       var currentNum = i;
    }
    }
    if (currentNum==(picList.length-1) ){
    classNormal();
    picZ();
    btnList[0].className='current';
    picList[currentNum].style.zIndex='2';
    picList[0].style.zIndex='3';
    picList[0].style.left='282px';
    moveElement('picLi_0',0,0,10);
    } else {
    classNormal();
    picZ();
    var nextNum = currentNum+1;
    btnList[nextNum].className='current';
    picList[currentNum].style.zIndex='2';
    picList[nextNum].style.zIndex='3';
    picList[nextNum].style.left='282px';
    moveElement('picLi_'+nextNum,0,0,10);
    }
    }
    addLoadEvent(addBtn);
    addLoadEvent(iBanner);
    </script>
    </head>
    <body>
    <div id="ibanner">
    <div id="ibanner_pic">
    <a href=“#"><img src="images/head/01.jpg" alt="说明" /></a>
    <a href=“#"><img src="images/head/02.jpg" alt="说明" /></a>
    <a href=“#"><img src="images/head/03.jpg" alt="说明" /></a>
    <a href=“#"><img src="images/head/04.jpg" alt="说明" /></a>
    <a href=“#"><img src="images/head/05.jpg" alt="说明" /></a>
    <a href=“#"><img src="images/head/06.jpg" alt="说明" /></a>
    </div>
    </div><!--ibanner end-->
    </body>
    </html>

  • 相关阅读:
    mui h5 动态实现数据的移除和数据操作完后的重新获取
    mui H5 js动态添加不同类型的数据
    hbuider 中点击就显示出一个单选的列表 ,然后后台跨域向里面动态添加数据,注意里面的格式是json object
    H-UI的前端处理验证,判断是否已经存在,比较健全的模板,可以自己添加一些校验
    spring mvc 和mybatis整合 的异常处理
    列表显示数据 但是数据的字体颜色要js添加
    hadoop环境都配置好后,当运行sbin下的start-hdfs.sh时报WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform...错误
    VisualVM初次使用BTrace功能方法步骤
    二叉树--递归实现
    二叉树--非递归实现
  • 原文地址:https://www.cnblogs.com/Raywang80s/p/2816459.html
Copyright © 2020-2023  润新知