首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 认证考试-> 微软认证
利用javascript从数据库取数据来实现csdn首页图片的切换效果 _javascript教程
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 

我在网上下载了一个网站的部分源代码 ,看到里面有实现CSDN首页图片的切换效果。虽然以前看网上有许多转载的,但是里面的代码都是在js中定义一个数组来存放图片的信息,但是今天这个方法更加灵活啊!只需要以下几步即可。

1.创建sql数据库:

CREATE TABLE [dbo].[images] (

   [imageid] [int] IDENTITY (1, 1) NOT NULL ,

   [imgUrl] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

   [imgText] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

   [imgLink] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,

   [imgAlt] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

2.引用外部css代码

<link href="styles/StyleSheet2.css" rel="stylesheet" type="text/css" />

3.写js代码:(不知道为什么放在一个单独的js文件不行)

    <script language="javascript" type="text/javascript"  >

    var imgWidth=248;              //图片宽

var imgHeight=200;             //图片高

var textFromHeight=21;         //焦点字框高度 (单位为px)

var textStyle="whiter";           //焦点字class style (不是连接class)

var textLinkStyle="whiter"; //焦点字连接class style

var buttonLineOn="#f60";           //button下划线on的颜色

var buttonLineOff="#000";          //button下划线off的颜色

var TimeOut=5000;              //每张图切换时间 (单位毫秒);

var imgUrl=new Array();

var imgLink=new Array();

var imgtext=new Array();

var imgAlt=new Array();

var adNum=0;

//焦点字框高度样式表 开始

document.write(<style type="text/css">);

document.write(#focuseFrom{width:+(imgWidth+2)+;margin: 0px; padding:0px;height:+(imgHeight+textFromHeight)+px; overflow:hidden;});

document.write(#txtFrom{height:+textFromHeight+px;line-height:+textFromHeight+px;width:+imgWidth+px;overflow:hidden;});

document.write(#imgTitle{width:+imgWidth+;top:-+(textFromHeight+14)+px;height:18px});

document.write(</style>);

document.write(<div id="focuseFrom">);

//焦点字框高度样式表 结束

 

 

imgUrls="<%=imgUrl%>";//获取后台cs代码的属性

imgtexts="<%=imgtext%>";

imgLinks="<%=imgLink%>";

imgAlts="<%=imgAlt%>";

 

imgUrl=imgUrls.split(",");

imgtext=imgUrls.split(",");

imgLink=imgUrls.split(",");

imgAlt=imgUrls.split(",");

 

function changeimg(n)

{

 adNum=n;

 window.clearInterval(theTimer);

 adNum=adNum-1;

 nextAd();

}

function goUrl(){

window.open(imgLink[adNum],_blank);

}

//NetScape开始

if (navigator.appName == "Netscape")

{

document.write(<style type="text/css">);

document.write(.buttonDiv{height:4px;width:21px;});

document.write(</style>);

function nextAd(){

 if(adNum<(imgUrl.length-1))adNum++;

 else adNum=1;

 theTimer=setTimeout("nextAd()", TimeOut);

 document.images.imgInit.src=imgUrl[adNum];

 document.images.imgInit.alt=imgAlt[adNum];

 //document.getElementById(focustext).innerHTML=imgtext[adNum];//在图片下面显示图片的路径

 document.getElementById(imgLink).href=imgLink[adNum];

 

}

 document.write(<a id="imgLink" href="+imgLink[1]+" target=_blank class="p1"><img src="http://www.knowsky.com/+imgUrl[1]+" name="imgInit" width=+imgWidth+ height=+imgHeight+ border=1 alt="+imgAlt[1]+" class="imgClass"></a><div id="txtFrom"><span id="focustext" class="+textStyle+">+imgtext[1]+</span></div>);

 

 document.write(<div id="imgTitle">);

 document.write(<div id="imgTitle_down">);

//数字按钮代码开始

for(var i=1;i<imgUrl.length;i++){document.write(<a href="javascript:changeimg(+i+)" class="button" style="cursor:hand" title="+imgAlt[i]+">+i+</a>);}

//数字按钮代码结束

 document.write(</div>);

 document.write(</div>);

 document.write(</div>);

 nextAd();

}

//NetScape结束

//IE开始

else

{

var count=0;

for (i=1;i<imgUrl.length;i++) {

 if( (imgUrl[i]!="") && (imgLink[i]!="")&&(imgtext[i]!="")&&(imgAlt[i]!="") ) {

  count++;

 } else {

  break;

 }

}

function playTran(){

 if (document.all)

  imgInit.filters.revealTrans.play(); 

}

var key=0;

function nextAd(){

 if(adNum<count)adNum++ ;

 else adNum=1;

 

 if( key==0 ){

  key=1;

 } else if (document.all){

  imgInit.filters.revealTrans.Transition=23;

  imgInit.filters.revealTrans.apply();

                   playTran();

    }

 document.images.imgInit.src=imgUrl[adNum];

 document.images.imgInit.alt=imgAlt[adNum];

 document.getElementById(link+adNum).style.background=buttonLineOn;

 for (var i=1;i<=count;i++)

 {

    if (i!=adNum){document.getElementById(link+i).style.background=buttonLineOff;}

 }

    //focustext.innerHTML=imgtext[adNum];//在图片下面显示路径

 theTimer=setTimeout("nextAd()", TimeOut);

}

document.write(<a target=_self href="javascript:goUrl()"><img style="FILTER: revealTrans(duration=1,transition=5);" src="http://www.knowsky.com/javascript:nextAd()" width=+imgWidth+ height=+imgHeight+ border=0 vspace="0" name=imgInit class="imgClass"></a><br>);

document.write(<div id="txtFrom"><span id="focustext" class="+textStyle+"></span></div>);

document.write(<div id="imgTitle">);

document.write( <div id="imgTitle_down"> <a class="trans"></a>);

//数字按钮代码开始

for(var i=1;i<imgUrl.length;i++)

{

    document.write(<a id="link+i+"  href="javascript:changeimg(+i+)" class="button" style="cursor:hand; " title="+imgAlt[i]+"  onFocus="this.blur()">+i+</a>);

}

//数字按钮代码结束

document.write(</div>);

document.write(</div>);

document.write(</div>);

document.write(</div>);

}

//IE结束

 

</script>

里面重要的地方都有注释了,直接复制到你的aspx代码中即可。

注意:在<body></body>中不要<form></form>标签,直接在<div align=left>

</div>中输入上面的js代码即可。不知道为什么有form总是报imgInit错误。

4.在cs进行数据库调用:直接代码了,呵呵呵不会看不懂吧

protected void Page_Load(object sender, EventArgs e)

    {

        if (!Page.IsPostBack)

        {

            bind();

        }

    }

    public string imgUrl = "", imgLink = "", imgtext = "", imgAlt = "";

    void bind()

    {

        using (SqlConnection connection = new SqlConnection("server=.;database=northwind;uid=sa;pwd=123"))

        {

            SqlDataAdapter sda = new SqlDataAdapter("select top 5 * from images order by imageid desc", connection);

            DataSet ds = new DataSet();

            DataTable dt = new DataTable();

            sda.Fill(ds);

            dt = ds.Tables[0];

            for (int i = 0; i < dt.Rows.Count; i++)

            {

                imgUrl += dt.Rows[i]["imgUrl"].ToString() + ",";

                imgtext += dt.Rows[i]["imgText"].ToString() + ",";

                imgLink += dt.Rows[i]["imgLink"].ToString() + ",";

                imgAlt += dt.Rows[i]["imgAlt"].ToString() + ",";

            }

        }

 

    }

 

测试环境:vs2005

如果看着不错对你有用麻烦顶一下啊!如果有好的建议或者好的解决方案也麻烦你共享一下,谢谢!

E-mail:teng_s2000@126.com

QQ:37210956


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·学习java需要知道的一些问题-JSP教程,Java技巧及代码
·vs.net中web services入门-.NET教程,Web Service开发
·C#中Base64之编码,解码方法-.NET教程,C#语言
·关于程序加载错误的处理-ASP教程,ASP应用
·.Net应用程序发布问题的最新解决方案,感觉比较爽(可桌面、程序中加自己的ICO及卸载等)-.NET教程,评论及其它
·设计模式-简单工厂模式(SimpleFactory-C#)-.NET教程,C#语言
·用photoshop制作logo-网页设计,Photoshop
·用jsp实现直接下载文件而不是在浏览器中打开的功能-JSP教程,Jsp/Servlet
·利用数据集实现对数据库的操作-.NET教程,数据库应用
·JAVA与数据库连接方法(二)-JSP教程,数据库相关
最新文章
·当windows vista系统提示“内存不足”怎么办?_windows vista
·王通:个人如何利用网络赚钱(1)_网赚技巧
·关于flash中注册点与中心点的区别_flash教程
·个人网站发展初期如何节省资金_站长心得
·如何写好“帮助中心”的内容_站长心得
·中国个人网站——新经济中的非主流2_站长心得
·backpack - 体验可读写的web服务_站长心得
·中文搜索引擎的研究_站长心得
·域名选取十技巧_站长心得
·用javascript 转换外部链接样式_javascript教程
相关主题
  • 利用javascript建立web应用_javascript教程
  • 利用javamail收/发gmail邮件(ssl)_邮件服务器
  • 利用Java调用可执行命令-JSP教程,Java技巧及代码
  • 利用Java Reflection(反射)原理,在hibernate里面实现对单表、视图的动态组合查询-JSP教程,Java技巧及代码
  • 利用Java存储过程简化数据库操作-数据库专栏,SQL Server
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭