存档: 05月, 2010

css+javascript实现鼠标点击后状态不变

1条评论 2010年5月21日

网站一般都有比较漂亮的导航菜单,尤其是当鼠标经过时发生的激活变化。唯一遗憾的就是,这种状态在点击后就消失了。需要重新将鼠标移动其上进行激活。为了解决这点遗憾,经过两天的试验,终于找到一条实现方法。这是用javascript加css来实现的。

首先说明,该段代码是在一个页面内实现的。也就是,所有内容均在一个页面内进行调用。做为一个小栏目的导航还是很不错的。代码很少,却很实用,还是先看看代码。

<div id=”headerdi”><div>
<div id=”neirongmu1″ onclick=”neirong(1)”>1</div>
<div id=”neirongmu2″ onclick=”neirong(2)”>2</div>
<div id=”neirongmu3″ onclick=”neirong(3)”>3</div>
<div id=”neirongmu4″ onclick=”neirong(4)”>4</div>
<div id=”neirongmu5″ onclick=”neirong(5)”>5</div>
<div id=”neirongmu6″ onclick=”neirong(6)”>6</div>
<div id=”neirongmu7″ onclick=”neirong(7)”>7</div>
<div id=”neirongmu8″ onclick=”neirong(8)”>8</div>
<div id=”neirongmu9″ onclick=”neirong(9)”>9</div>

<SCRIPT LANGUAGE=”JavaScript”>
<!–
function neirong(t){
for(var i=1;i<10 ;i++ ){
if(i==t){
document.getElementById(“neirong”+i).style.display=”;
if(i==t){
document.getElementById(“neirongmu”+i).className=(“tiao”+i+”p”+i);
}else{
document.getElementById(“neirongmu”+i).className=(“tiao”+i);
}
}else{
document.getElementById(“neirong”+i).style.display=’none’;
if(i==9){
document.getElementById(“neirongmu”+i).className=(“tiao”+i);
}else{
document.getElementById(“neirongmu”+i).className=(“tiao”+i);
}
}
}
}
neirong(1);
//–>
</SCRIPT>
</div>
</div>

<div id=”neirong1″>
1

</div>

<div id=”neirong2″ style=”display:none;”>
2
</div>

<div id=”neirong3″ style=”display:none;”>
3
</div>

<div id=”neirong4″ style=”display:none;”>
4
</div>

<div id=”neirong5″ style=”display:none;”>
5
</div>

<div id=”neirong6″ style=”display:none;”>
6
</div>

<div id=”neirong7″ style=”display:none;”>
7
</div>

<div id=”neirong8″ style=”display:none;”>
8
</div>

<div id=”neirong9″ style=”display:none;”>
9
</div>

css代码部分

#headerdi{width:100%;height:35px;margin:0px;}
.headerdi{position:absolute;width:940px;height:35px;margin:0 auto;top:155px;}
.headerdi .tiao1{position:absolute;left:21px;background:url(zhunbei_an.gif) no-repeat;width:112px;height:35px;z-index:9;}
.headerdi .tiao2{position:absolute;left:119px;background:url(huaiyun_an.gif) no-repeat;width:112px;height:35px;z-index:8;}
.headerdi .tiao3{position:absolute;left:217px;background:url(fenmian_an.gif) no-repeat;width:112px;height:35px;z-index:7;}
.headerdi .tiao4{position:absolute;left:315px;background:url(yuezi_an.gif) no-repeat;width:112px;height:35px;z-index:6;}
.headerdi .tiao5{position:absolute;left:413px;background:url(xinsheng_an.gif) no-repeat;width:112px;height:35px;z-index:5;}
.headerdi .tiao6{position:absolute;left:511px;background:url(01_an.gif) no-repeat;width:112px;height:35px;z-index:4;}
.headerdi .tiao7{position:absolute;left:609px;background:url(13_an.gif) no-repeat;width:112px;height:35px;z-index:3;}
.headerdi .tiao8{position:absolute;left:707px;background:url(35_an.gif) no-repeat;width:112px;height:35px;z-index:2;}
.headerdi .tiao9{position:absolute;left:805px;background:url(shaoer_an.gif) no-repeat;width:112px;height:35px;z-index:1;}

.headerdi .tiao1p1{position:absolute;left:21px;background:url(zhunbei_liang.gif) no-repeat;width:112px;height:35px;z-index:11;}
.headerdi .tiao2p2{position:absolute;left:119px;background:url(huaiyun_liang.gif) no-repeat;width:112px;height:35px;z-index:10;}
.headerdi .tiao3p3{position:absolute;left:217px;background:url(fenmian_liang.gif) no-repeat;width:112px;height:35px;z-index:9;}
.headerdi .tiao4p4{position:absolute;left:315px;background:url(yuezi_liang.gif) no-repeat;width:112px;height:35px;z-index:8;}
.headerdi .tiao5p5{position:absolute;left:413px;background:url(xinsheng_liang.gif) no-repeat;width:112px;height:35px;z-index:7;}
.headerdi .tiao6p6{position:absolute;left:511px;background:url(01_liang.gif) no-repeat;width:112px;height:35px;z-index:6;}
.headerdi .tiao7p7{position:absolute;left:609px;background:url(13_liang.gif) no-repeat;width:112px;height:35px;z-index:5;}
.headerdi .tiao8p8{position:absolute;left:707px;background:url(35_liang.gif) no-repeat;width:112px;height:35px;z-index:4;}
.headerdi .tiao9p9{position:absolute;left:805px;background:url(shaoer_liang.gif) no-repeat;width:112px;height:35px;z-index:3;}

这段css代码是我写程序时用的,没有任何更改。可以根据自己的需要进行适当的修改。也可以完全删除重写。具体实现什么样的样式就看大家的想像力了。如所有导航菜单背景都相同。只要写四条css就行了。细看一下javascript代码就懂了。

google的收录量少于baidu?

1条评论 2010年5月20日

前些日子,小站在谷歌的收录量呈直线下划趋势,心急如焚。本以为与百度的情况一样。只是搜索引擎内部短暂的更新所致。在同样的情况下,百度对本站的收录量反而不断的增长。曾一度莫名其妙的认为,这两家公司是不是一个老板当家。不过,最终还是否定了这个观点。

直到最近,情况才有所好转。google对本站的收录量不在减少,停在了一个相对稳定的数字上。而百度却增长了不少。对比了这两个搜索引擎发现,也是我第一次发现。google的收录量竟然少于baidu。难道是google搬家,掉了不少东西,还是百度少了个国内对手一时高兴过了头?一直以来,百度对网站的收录量都是低于google,这次却来了个360度大转变。

经过思索,以及google网站的变化。个人觉得,不是google收录能力下降,也不是被搬家影响。而是google更加强大了,更加个性了。对网站的质量,考虑的更加严格了。也就是说,技术上了一个新的台阶。必竟,现在的“优化”技术太在乎排名而不是做大做强网站了,加上百度升级,自己搬家。google要是不升级才奇怪呢。

不管怎么弄吧,反正我不会因为网站的收录量少而不高兴。因为搜索引擎的升级只会给用户带来好处。而我的网站也是同一个目的,所以还是很放心的。

用CSS设置半透明的背景

2 条评论 2010年5月5日

在CSS中有一个Alpha滤镜,这个滤镜可以设置目标元素的透明度。还可以通过指定坐标,从而实现各种不同范围的透明度。具体语法如下:
{filter: alpha(opacity=#opacity,finishopacity=#finishopacity,style=#style,

startx=#startx,starty=#starty,finishx=#finishx,finishy=#finishy)}

具体参数含义如下:
opacity 透明度。默认的范围是从0 到 100,他们其实是百分比的形式。也就是说,0代表完全透明,100代表完全不透明。
finishopacity 是一个可选参数,如果想要设置渐变的透明效果,就可以使用他们来指定结束时的透明度。范围也是0 到 100。
style   指定透明区域的形状特征:0 代表统一形状,1 代表线形,2 代表放射状,3 代表矩形
startx  渐变透明效果开始处的 X坐标。
starty  渐变透明效果开始处的 Y坐标。
finishx 渐变透明效果结束处的 X坐标。
finishy 渐变透明效果结束处的 Y坐标。

以上的参数可以选用,可以只设置一个opacity
例如:
{filter:alpha(opacity=50)}
这个就是半透明的设置,只要把{}中的代码加入到需要设置的模版中的{}的即可,记得与前面的代码之间要用”;”间隔,不然设置是无效的

例如:
我要设置模版区域背景的颜色(白色)+半透明[就是我现在blog的效果]
只要在
.modbox{}
.modbl{}
.modbc{}
.modbr{}
中都设置background-color:white
这些就是模版背景设置的ID

然后再在.modbox,.modbl,.modbc,.modbr{}如果没有这个的话可以自己加一个
中加入filter : alpha(opacity=80)就可以达到所有模版的背景都是半透明的效果了

如果希望像我这样只显示blog的背景,别的都全透明的话,那么就在别的模版中加入背景全透明的代码即可
background:transparent                       这就是背景全透明的代码
各模版ID请参照链接:百度空间CSS说明

不过这样的话,相关模版的主要区域是透明了,可是底下还会有一条颜色留着的,所以另外还要在
.modbl{}
.modbc{}
.modbr{}
中也加入背景全透明的代码,这样才能让模版区域完全透明,就像我现在的效果一样

另外这个参数目前只能用于背景色的设置,背景图片无法设置为半透明

我把我的背景半透明代码贴出来吧
.modbox{padding:10px 10px 0 10px;background-color:#FFFFFF;border-left:1px solid #813533;border-right:1px solid #813533}
.modbl{background:transparent;border-left:1px solid #813533;border-bottom:1px solid #813533;line-height:1px}
.modbc{background:transparent;border-bottom:1px solid #813533;line-height:1px}
.modbr{background:transparent;;border-right:1px solid #813533;border-bottom:1px solid #813533;line-height:1px}
.modbox,.modbl,.modbc,.modbr{filter:alpha(opacity=80);-moz-opacity:0.8;width:auto !important;width:100%}
红色字是关键设置,如果不想设置全透明的话,可以把.modbl{}.modbc{}.modbr{}三个中的background:transparent改成.modbox{}中的background-color:#FFFFFF,当然这里的#FFFFFF你可以换成自己喜欢的颜色,不过为了美观统一,建议这4个的颜色代码最好设置为一样的

附:#FFFFFF就是white,白色;#000000就是black,黑色

鉴于很多朋友都想知道我设置全透明的模块ID的代码,所以这里特别贴出来,供大家参考:
个人档案#m_pro{}
空间标题栏#m_header{}
菜单栏是#tab{}
文章区域#m_blog{}
相册区#m_album{}
友情链接#m_links{}
文章分类#m_artclg{}
最新评论#m_comment{}
访问量区域#comm_info{}
以上所有模块[除空间标题和菜单外]背后的大模块.stage{}
这就是几个大模块的ID,大家只要把全透明代码添加到其中想要设置全透明的ID{}内就可以了,如果没有你要设置的模块ID{},就自己添加上去,添加在空白处就可以了