CSDN博客里面挂广告的推荐方法

时间:2022-10-09 12:15:56

CSDN博客里面挂广告的推荐方法
此文章版权归JAVA世纪网()和CSDN()所有.
JAVA世纪网地址:
CSDN博客地址:
如转载,请保留此说明和完整的页面内容。


感谢 



前言
大家应该注意到了,在CSDN的博客里面并没有挂CSDN自己的广告,我们感谢CSDN的无私奉献,我们应继续支持CSDN。

那我们不要浪费CSDN的好意了,我们来看看如果把自己的广告放到里面去。

一、前提条件
CSDN的页面支持自定义的配置
CSDN的页面内容支持比较完整的JS代码。

二、简单的方式、

1 帖子里面直接书写广告代码

你可以在源代码的模式下面,直接放入你要加入的广告代码。比如:


此方法的优点是,你可以最大限度的控制格式,加入你能加入的任何广告代码。
缺点,每次发帖都要排版,如果你更换个广告,则以前的帖子必须重新编辑一遍。

2 帖子里面外挂js文件
和1区别不大,你直接在源代码里面用自己的动态JS代码。比如


优点:可以更灵活的修改广告代码。但
缺点:有些广告代码会有些小问题。更重要的是你需要一个稳定的外部服务器空间。如果服务器变动,你的所有帖子仍需要编辑。

3 在配置里面直接书写广告
大部分人都是这样直接


优点:一次修改可以影响所有的帖子
缺点:位置限制在左侧,切有点太窄了。


二、我推荐使用的方式
继续在配置里面书写广告,但广告并不局限于显示在左侧,而是可以移动到你需要的位置。比如:
顶部的右上,那个搜索的附近;
帖子内容的开始;
帖子内容的结束
评价的开始
评价表单右侧
整个页面的底部

我们来看所需要的技术。
1 如何定位广告的位置
请看如下的代码
查看复制到剪切板打印
// 获取页面某个元素对象  
// 我这里使用了id属性,你也可以用其它的方法获得元素对象  
var t = ("Anthem__PostComment_CommentUpdatePanel__");  
 
// 获得左侧,顶部和上级对象  
objLeft = ;  
objTop = ;  
objParent = ;  
// 如果上级元素不是BODY,则继续累计计算相对偏差  
while( () != "BODY" ) {  
  objLeft += objParen;  
  objTop += objParen;  
  objParent = objParen;  
}  
// 我们已经拿到了我们要定位的广告元素位置了 

  // 获取页面某个元素对象
  // 我这里使用了id属性,你也可以用其它的方法获得元素对象
  var t = ("Anthem__PostComment_CommentUpdatePanel__");

  // 获得左侧,顶部和上级对象
  objLeft = ;
  objTop = ;
  objParent = ;
  // 如果上级元素不是BODY,则继续累计计算相对偏差
  while( () != "BODY" ) {
    objLeft += objParen;
    objTop += objParen;
    objParent = objParen;
  }
  // 我们已经拿到了我们要定位的广告元素位置了



2 我们的广告
查看复制到剪切板打印
<div id="GOOGLE_COMMENT" style="position:absolute;display:none">  
<script type="text/javascript"><!--  
google_ad_client = "pub-2908059660288034";  
/* 300x250, 创建于 08-9-16 */ 
google_ad_slot = "0023597101";  
google_ad_width = 300;  
google_ad_height = 250;  
//-->  
</script>  
<script type="text/javascript" 
src="
</script>  
</div> 

<div id="GOOGLE_COMMENT" style="position:absolute;display:none">
<script type="text/javascript"><!--
google_ad_client = "pub-2908059660288034";
/* 300x250, 创建于 08-9-16 */
google_ad_slot = "0023597101";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src=" /></script>
</div>
里面注意我使用了GOOGLE_COMMENT作为这个广告的ID,同时设置了CSS属性为绝对定位,不显示。

3 移动我们的广告到正确的位置
查看复制到剪切板打印
// 得到我们前面的广告对象  
var gg = ("GOOGLE_COMMENT");  
// 相对于我们要放广告的位置,加上一个偏移量  
=(objLeft +450)+"px";  
= (objTop+10)+"px";  
// 显示广告  
=""; 

  // 得到我们前面的广告对象
  var gg = ("GOOGLE_COMMENT");
  // 相对于我们要放广告的位置,加上一个偏移量
  =(objLeft +450)+"px";
  = (objTop+10)+"px";
  // 显示广告
  ="";

4 在页面装载完毕后再显示广告
因为我们的代码在整个页面的前部,所以不能一开始就运行,否则根本找不到一些在后面才出现的元素。
我们把自己的代码放在一个function里面
查看复制到剪切板打印
function GOOGLEResize(){  
  // 我们全部的初始化代码  
}  
// 当页面装载完毕后,再运行我们的程序  
=GOOGLEResize; 

function GOOGLEResize(){
  // 我们全部的初始化代码
}
// 当页面装载完毕后,再运行我们的程序
=GOOGLEResize;

5 处理页面的resize事件
在IE里,可以简单的用
查看复制到剪切板打印
=GOOGLEResize; 

=GOOGLEResize;
但是在Firefox里面,则必须用定时器进行定期检测才行
查看复制到剪切板打印
var startWidth = ("body")[0].offsetWidth;  
function checkFFresize() {  
  var resizeWidth = ("body")[0].offsetWidth;  
  if (resizeWidth == startWidth) {  
  } else {  
    startWidth=("body")[0].offsetWidth;  
    GOOGLEResize();  
  }  
  setTimeout("checkFFresize();",2000);  
}  
if () {  
} else {  
  setTimeout("checkFFresize();",1000);  


var startWidth = ("body")[0].offsetWidth;
function checkFFresize() {
  var resizeWidth = ("body")[0].offsetWidth;
  if (resizeWidth == startWidth) {
  } else {
    startWidth=("body")[0].offsetWidth;
    GOOGLEResize();
  }
  setTimeout("checkFFresize();",2000);
}
if () {
} else {
  setTimeout("checkFFresize();",1000);
}

6 处理页面的异常
屏蔽掉可能出现的异常
查看复制到剪切板打印
function killErrors() {  
return true;  
}  
= killErrors;  

function killErrors() {
return true;
}
= killErrors;

至此,我所需要的代码已经全部完成了。

三、我的广告的完整代码
查看复制到剪切板打印
<script type="text/javascript">  
function killErrors() {  
return true;  
}  
= killErrors;   
 
var init = false;  
function GOOGLEResize(){  
  var subject = ("_ViewPost_PreviousAndNextEntriesUp");  
  if(!init){  
    =+"<br/><br/><br/><br/><br/><br/><hr/><br/>";  
    init = true;  
  }  
  var t = ("Anthem__PostComment_CommentUpdatePanel__");  
  var gg = ("GOOGLE_COMMENT");  
 
  objLeft = ;  
  objTop = ;  
  objParent = ;  
  while( () != "BODY" )  
  {  
    objLeft += objParen;  
    objTop += objParen;  
    objParent = objParen;  
  }  
 
  =(objLeft +450)+"px";  
  = (objTop+10)+"px";  
  ="";  
 
 
  objLeft = subject .offsetLeft;  
  objTop = subject .offsetTop;  
  objParent = subject .offsetParent;  
  while( () != "BODY" )  
  {  
    objLeft += objParen;  
    objTop += objParen;  
    objParent = objParen;  
  }  
 
  var gg728=("GOOGLE_TOP");  
  = objLeft+"px";  
  = (objTop+50)+"px";  
  ="";  
}  
 
=GOOGLEResize;  
=GOOGLEResize;  
var startWidth = ("body")[0].offsetWidth;  
function checkFFresize() {  
  var resizeWidth = ("body")[0].offsetWidth;  
  if (resizeWidth == startWidth) {  
  } else {  
    startWidth=("body")[0].offsetWidth;  
    GOOGLEResize();  
  }  
  setTimeout("checkFFresize();",2000);  
}  
if () {  
} else {  
  setTimeout("checkFFresize();",1000);  
}  
</script>  
 
<script type="text/javascript"><!--  
google_ad_client = "pub-2908059660288034";  
/* CSDN摩天 160x600, 创建于 08-9-17 */ 
google_ad_slot = "5598761730";  
google_ad_width = 160;  
google_ad_height = 600;  
//-->  
</script>  
<script type="text/javascript" 
src="
</script>  
 
<div id="GOOGLE_TOP" style="position:absolute;top:248px;left:250px;width:728;height:90;display:none"><scripttype="text/javascript"><!--  
google_ad_client = "pub-2908059660288034";  
/* CSDN横幅 728x90, 创建于 08-9-17 */ 
google_ad_slot = "9488011826";  
google_ad_width = 728;  
google_ad_height = 90;  
//-->  
</script>  
<script type="text/javascript" 
src="
</script></div>  
 
<div id="GOOGLE_COMMENT" style="position:absolute;display:none">  
<script type="text/javascript"><!--  
google_ad_client = "pub-2908059660288034";  
/* 300x250, 创建于 08-9-16 */ 
google_ad_slot = "0023597101";  
google_ad_width = 300;  
google_ad_height = 250;  
//-->  
</script>  
<script type="text/javascript" 
src="
</script>  
</div> 

<script type="text/javascript">
function killErrors() {
return true;
}
= killErrors;

var init = false;
function GOOGLEResize(){
  var subject = ("_ViewPost_PreviousAndNextEntriesUp");
  if(!init){
    =+"<br/><br/><br/><br/><br/><br/><hr/><br/>";
    init = true;
  }
  var t = ("Anthem__PostComment_CommentUpdatePanel__");
  var gg = ("GOOGLE_COMMENT");

  objLeft = ;
  objTop = ;
  objParent = ;
  while( () != "BODY" )
  {
    objLeft += objParen;
    objTop += objParen;
    objParent = objParen;
  }

  =(objLeft +450)+"px";
  = (objTop+10)+"px";
  ="";


  objLeft = subject .offsetLeft;
  objTop = subject .offsetTop;
  objParent = subject .offsetParent;
  while( () != "BODY" )
  {
    objLeft += objParen;
    objTop += objParen;
    objParent = objParen;
  }

  var gg728=("GOOGLE_TOP");
  = objLeft+"px";
  = (objTop+50)+"px";
  ="";
}

=GOOGLEResize;
=GOOGLEResize;
var startWidth = ("body")[0].offsetWidth;
function checkFFresize() {
  var resizeWidth = ("body")[0].offsetWidth;
  if (resizeWidth == startWidth) {
  } else {
    startWidth=("body")[0].offsetWidth;
    GOOGLEResize();
  }
  setTimeout("checkFFresize();",2000);
}
if () {
} else {
  setTimeout("checkFFresize();",1000);
}
</script>

<script type="text/javascript"><!--
google_ad_client = "pub-2908059660288034";
/* CSDN摩天 160x600, 创建于 08-9-17 */
google_ad_slot = "5598761730";
google_ad_width = 160;
google_ad_height = 600;
//-->
</script>
<script type="text/javascript"
src=" /></script>

<div id="GOOGLE_TOP" style="position:absolute;top:248px;left:250px;width:728;height:90;display:none"><scripttype="text/javascript"><!--
google_ad_client = "pub-2908059660288034";
/* CSDN横幅 728x90, 创建于 08-9-17 */
google_ad_slot = "9488011826";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src=" /></script></div>

<div id="GOOGLE_COMMENT" style="position:absolute;display:none">
<script type="text/javascript"><!--
google_ad_client = "pub-2908059660288034";
/* 300x250, 创建于 08-9-16 */
google_ad_slot = "0023597101";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src=" /></script>
</div>

希望大家用的开心。