动态生成JS 实现 .NET 网站广告管理
2010-11-13 23:16
429 查看
一般的网站,其中的广告都需要定期更换和管理。对于广告的存储,一般选用的数据源是数据库或者XML。而对于广告的显示,一般有两种方法:
一是使用AdRotator广告组件。这样很容易实现,通过封装AdRotator控件,在需要显示广告的页面放置自定义控件并设置广告关键词:
AdControl.ascx:<%@ControlLanguage="C#"AutoEventWireup="true"CodeFile="AdControl.ascx.cs"Inherits="Controls_AdControl"%>
<asp:AdRotatorID="Ror"runat="server"/>AdControl.ascx.cs:publicpartialclassControls_AdControl:System.Web.UI.UserControl
{
privatestringkeyWord;
privatestringKeyWord
{
get{returnkeyWord;}
set{keyWord=value;}
}
privateintheight;
publicintHeight
{
get{returnheight;}
set{height=value;}
}
privateintwidth;
publicintWidth
{
get{returnwidth;}
set{width=value;}
}
privatestringcity;
publicstringCity
{
get{returncity;}
set{city=value;}
}
//OnLoadComplete
protectedvoidPage_Load(objectsender,EventArgse)
{
//if(!IsPostBack)
//{
//}
}
publicvoidKeywordBind(stringkey){
keyWord=key;
if(height>0)Ror.Height=height;
if(width>0)Ror.Width=width;
city=Profile.city;
if(string.IsNullOrEmpty(city))
city="武汉";
Ror.KeywordFilter=keyWord;
Ror.DataSource=AdDA.GetAdList(keyWord,city);
Ror.DataBind();
}
缺点:每显示一个广告,就需要数据库有一次连接;那一个页面过多的广告,对数据库的消耗太大;
第二种方式,使用JS来管理广告,具体方法:
广告信息存于数据库中(图片地址,alter信息等),使用C#读写文件生成ad.js:
using(StreamWritersw=newStreamWriter(url))//"d:\\DJS\\ad.js"
{
DataTabledt=AdDA.EnumAdList();
stringsrc,keyword,alter,link;
sw.WriteLine("$(document).ready(function(){");
foreach(DataRowdrindt.Rows)
{
src=dr["ImageUrl"].ToString();
keyword=dr["keyword"].ToString();
alter=dr["AlternateText"].ToString();
link=dr["NavigateUrl"].ToString();
sw.WriteLine("$('#"+keyword+"i').attr({");
sw.WriteLine("'src':'"+src+"','alt':'"+alter+"'");
sw.WriteLine("});");
sw.WriteLine("$('#"+keyword+"a').attr({");
sw.WriteLine("'href':'"+link+"'");
sw.WriteLine("});");
}
sw.WriteLine("});");
}
在页面中包含该JS:
<scripttype="text/javascript"src="js/jquery.js"></script>
<scripttype="text/javascript"src="js/ad.js"></script>在需要显示广告的位置加上相应的标签:<aid="iR1a"><imgid="iR1i"width="165"height="120"/></a>
如此,在更新广告信息后只需要重新生成ad.js即可实现网站的广告更新。
OVER
一是使用AdRotator广告组件。这样很容易实现,通过封装AdRotator控件,在需要显示广告的页面放置自定义控件并设置广告关键词:
缺点:每显示一个广告,就需要数据库有一次连接;那一个页面过多的广告,对数据库的消耗太大;
第二种方式,使用JS来管理广告,具体方法:
广告信息存于数据库中(图片地址,alter信息等),使用C#读写文件生成ad.js:
在页面中包含该JS:
如此,在更新广告信息后只需要重新生成ad.js即可实现网站的广告更新。
OVER
相关文章推荐
- 动态生成js类的实现方法
- .Net下动态报表生成实现(一)
- JS实现动态生成表格并提交表格数据向后端
- js动态生成form 并用ajax方式提交的实现方法
- 用js+jsp实现在同一个下拉列表中,动态生成多级select选项
- 后台动态生成文章名,前台js实现点文章名进入指定文章,打通前台与后台的操作。
- 万能js实现翻页,动态生成内容自动翻页,兼容各种浏览器(已测试)----神器版!
- 网站开发进阶(十四)JS实现二维码生成
- 名企动态网站开发--js实现可拖动弹窗
- 网站开发进阶(十四)JS实现二维码生成
- 动态生成js类的实现方法
- [转]浅析C#编程实现动态生成Word文档_.Net教程
- .net网站与Winform窗体的数据交互(JS调用Winform后台方法实现)
- 怎样用js动态生成上传控件,.NET不定数量上传
- js 动态生成json 实现类似java map的动能
- 利用配置实现企业网站快速搭建(动态内容生成静态网页)
- js动态生成Html元素实现Post操作(createElement)
- 如何进行js动态生成option?如何实现二级连动?
- JS实现动态生成html table表格的方法分析
- JS 排序输出实现table行号自增前端动态生成的tr