webrebuild.org第四届年会——金秋四城联动
大白的工作笔记 注册 | 登陆

滑动 点击 评分效果

森林某人 前几天问

http://www.dabaii.com/demo/2009/03/ 
大小: 15.03 K
尺寸: 500 x 235
浏览: 38 次
点击打开新窗口浏览全图
这个效果怎么写标签,于是 我想起了我之前写的一个模范豆瓣评分的(http://dabaii.com/?action=show&id=35)。

显然这次的评分和上次的从标签来说 没什么好说的,主要还是看怎么实现效果。

首先确定结构

XML/HTML代码
  1. <div class="box">  
  2. <div class="f">0</div>  
  3. <div class="s"></div>  
  4. </div>  

首先要确保可以复用 ,所以box是个单独的模块,一个评分条。 f 是现实分值的, s 是评分条。

css代码(不解释):

CSS代码
  1. <style type="text/css" media="screen"><!--   
  2. *{padding:0; margin:0;}   
  3. body { font-size:12pxpadding:200px;}   
  4. .box { width:600pxheight:35pxmargin:10px;overflow:hidden; }   
  5. .s { width:482pxheight:13pxbackground:url(images/1.gif) no-repeat 0 -22px;}   
  6. .f { width:29pxheight:22pxbackground:url(images/1.gif); text-align:centerline-height:15pxcolor:#FFF; }   
  7. --></style>  

关键是思维,其实我一直觉得写前端效果主要还是要想到用什么方式实现效果。我这里采用的是获取鼠标基于评分条位置来确定分数显示版的位置,来判断鼠标位置位于评分条总宽度的百分比,然后确定分数显示版的数值。

步骤
1。给所有评分条绑定事件;
2。获取评分条的位置;
3。获取鼠标位置;
4。计算显示板的需要显示的位置(鼠标位置-评分条位置);
5。计算显示数值(显示位置/评分条宽度*10;截取小数点1位);
6。设置到相应页面属性。

提供一个获取鼠标位置的方法。

js代码(基于jQ,别问我js怎么写 不解释):

JavaScript代码
  1. <script>   
  2. $(document).ready(function(){   
  3. var w3c=(document.getElementById)? truefalse;   
  4. var agt=navigator.userAgent.toLowerCase();   
  5. var ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1) && (agt.indexOf("omniweb") == -1));   
  6. function IeTrueBody(){//判断头部是否有标准声明   
  7.     return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body   
  8. }   
  9.   
  10. $('.s').each(function(i){   
  11.     //获取评分条位置   
  12.     var offset = $(this).offset().left;   
  13.     $(this).click(function (e){   
  14.          var curX=(!ie)?e.pageX : event.clientX+IeTrueBody().scrollLeft;   
  15.         var n1 = curX - offset ;   
  16.         var n2 = n1/482*10 + '' ;   
  17.         n2 = n2.slice(0,3);   
  18.         $('.f').eq(i).html(n2).animate({marginLeft:n1-10},'slow');   
  19.     })                     
  20.  })                           
  21. })   
  22. </script>  

Tags: 评分效果, css森林

« 上一篇 | 下一篇 »

Trackbacks

点击获得Trackback地址,Encode: UTF-8 点击获得Trackback地址,Encode: GB2312 or GBK 点击获得Trackback地址,Encode: BIG5

4条记录访客评论

食堂承包首选正福餐饮公司www.shsx88.com

Post by 食堂承包 on 2009, December 7, 2:59 PM 引用此文发表评论 #1

食堂承包www.shsx88.com

Post by 食堂承包 on 2009, December 3, 11:52 AM 引用此文发表评论 #2

隔离卡批发.价格优惠.电话:

Post by 隔离卡 on 2009, December 3, 8:10 AM 引用此文发表评论 #3

烤肉炉百度烤肉炉纸上烤肉炉烧烤炉专用纸围裙其它致富小机械批发.价格优惠.电话:02482116562 QQ:491783951 网址:http://www.086hh.com

Post by 烤肉炉 on 2009, December 2, 1:41 PM 引用此文发表评论 #4


发表评论

评论内容 (必填):