﻿
//js版本的图片播放器类,跨浏览器支持,完全支持SEO优化的较完美的图片播放解决方案,不需要使用display:none来破坏搜索引擎抓取

//注意: 自动循环播放需要 全局setTimeout()函数对象;
//注意: 此示例大小标题,依赖于与A的 title设置,加上"-"区分大小标题,大标题在前

//改进部分:seo优化更好,使用更为简便,代码量减少一半.

//----------------版权声明
// 参考迅雷首页轮播广告程序,图片资源和部分文字资源来自于迅雷,版权归迅雷所有
// 本人只对js代码改动部分享有版权,免费版权,自由使用;如果您对程序有优化和改进,请通知本人,不胜感激!
// 制作:hpking,Email:hpking@yeah.net,QQ:99186610
//----------------版权声明

var PicPlayer =
{
    MaxScreen: 0,
    CurScreen: 1,
    itemArr: null,
    //参数: 获取子节点的对象ID,子节点类型(默认为div,针对FF和Opera这些特殊浏览器优化)
    init: function(divID, nodeType)
    {
        if (nodeType == null)
            nodeType = "div";
        var pobj = document.getElementById(divID);

        itemArr = pobj.getElementsByTagName(nodeType); //获取制定类型的子元素
        this.MaxScreen = itemArr.length;
    },

    //显示内容和标题导航
    show: function()
    {
        if (this.CurScreen > this.MaxScreen)//循环
            this.CurScreen = 1;

        //全部隐藏,
        for (var i = 0; i < this.MaxScreen; i++)
            itemArr[i].style.display = "none";

        //当前显示
        itemArr[this.CurScreen - 1].style.display = "block";

        this.showTile();
        this.showPageBar();
    },
    //显示标题
    showTile: function()
    {
        var titlestr = "";

        //依据A的title 来设置大小标题和url
        var title = itemArr[this.CurScreen - 1].getElementsByTagName("A")[0].title;
        var aurl = itemArr[this.CurScreen - 1].getElementsByTagName("A")[0].url;

        titlestr = '<h3><a href="' + aurl + '" target="_blank">' + title + '</a></h3>';
        document.getElementById("SwitchTitle").innerHTML = titlestr;
    },
    //显示分页条
    showPageBar: function()
    {
        var NavStr = "";
        for (i = 1; i <= this.MaxScreen; i++)
        {
            if (i == this.CurScreen)//当前的
                NavStr += '<li onmouseover="PicPlayer.pause();" onmouseout="PicPlayer.goon();"><a href="javascript:;" target="_self" class="sel">' + i + '</a></li>';
            else
                NavStr += '<li onmouseover="PicPlayer.pause();" onmouseout="PicPlayer.goon();" onclick="PicPlayer.url(' + i + ');"><a href="javascript:;" target="_self">' + i + '</a></li>';
        }
        document.getElementById("SwitchNav").innerHTML = NavStr;
    },

    //---------------以下为功能操作函数
    //定时器
    timer: function()
    {
        this.CurScreen += 1;
        this.show();
        refreshSwitchTimer = setTimeout('PicPlayer.timer();', 3000);
    },
    //暂停
    pause: function()
    {
        clearTimeout(refreshSwitchTimer);
    },
    //继续
    goon: function()
    {
        clearTimeout(refreshSwitchTimer);
        refreshSwitchTimer = setTimeout('PicPlayer.timer();', 3000);
    },
    //地址转向
    url: function(index)
    {
        clearTimeout(refreshSwitchTimer);

        this.CurScreen = index - 1;
        this.timer();
    }
}